mirror of git://gcc.gnu.org/git/gcc.git
Makefile.am, [...] (xml_sources_extra): Add fdl-1.3.xml.
2010-06-06 Jonathan Wakely <jwakely.gcc@gmail.com> * doc/Makefile.am, doc/Makefile.in (xml_sources_extra): Add fdl-1.3.xml. * doc/xml/manual/intro.xml: Update FDL link. * doc/xml/manual/spine.xml: Update FDL include. * doc/xml/gnu/fdl-1.3.xml: Add. * doc/html/*: Regenerate. From-SVN: r160352
This commit is contained in:
parent
d156668fd7
commit
669b5857cc
|
|
@ -1,3 +1,12 @@
|
|||
2010-06-06 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
|
||||
* doc/Makefile.am, doc/Makefile.in (xml_sources_extra): Add
|
||||
fdl-1.3.xml.
|
||||
* doc/xml/manual/intro.xml: Update FDL link.
|
||||
* doc/xml/manual/spine.xml: Update FDL include.
|
||||
* doc/xml/gnu/fdl-1.3.xml: Add.
|
||||
* doc/html/*: Regenerate.
|
||||
|
||||
2010-06-06 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
|
||||
* include/ext/pointer.h (_Pointer_adapter::operator++): Remove
|
||||
|
|
|
|||
|
|
@ -172,6 +172,7 @@ xml_sources_manual = \
|
|||
|
||||
xml_sources_extra = \
|
||||
${xml_dir}/gnu/fdl-1.2.xml \
|
||||
${xml_dir}/gnu/fdl-1.3.xml \
|
||||
${xml_dir}/gnu/gpl-2.0.xml \
|
||||
${xml_dir}/gnu/gpl-3.0.xml
|
||||
|
||||
|
|
|
|||
|
|
@ -333,6 +333,7 @@ xml_sources_manual = \
|
|||
|
||||
xml_sources_extra = \
|
||||
${xml_dir}/gnu/fdl-1.2.xml \
|
||||
${xml_dir}/gnu/fdl-1.3.xml \
|
||||
${xml_dir}/gnu/gpl-2.0.xml \
|
||||
${xml_dir}/gnu/gpl-3.0.xml
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
<a class="ulink" href="http://www.fsf.org/" target="_top">FSF
|
||||
</a>
|
||||
</p></div><div><div class="legalnotice" title="Legal Notice"><a id="id508660"></a><p>
|
||||
</p></div><div><div class="legalnotice" title="Legal Notice"><a id="id626564"></a><p>
|
||||
<a class="link" href="manual/license.html" title="License">License
|
||||
</a>
|
||||
</p></div></div></div><hr /></div><p>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
2008
|
||||
|
||||
<a class="ulink" href="http://www.fsf.org" target="_top">FSF</a>
|
||||
</p></div></div><hr /></div><div class="qandaset" title="Frequently Asked Questions"><a id="id523703"></a><dl><dt>1. <a href="faq.html#faq.info">General Information</a></dt><dd><dl><dt>1.1. <a href="faq.html#faq.what">
|
||||
</p></div></div><hr /></div><div class="qandaset" title="Frequently Asked Questions"><a id="id536922"></a><dl><dt>1. <a href="faq.html#faq.info">General Information</a></dt><dd><dl><dt>1.1. <a href="faq.html#faq.what">
|
||||
What is libstdc++?
|
||||
</a></dt><dt>1.2. <a href="faq.html#faq.why">
|
||||
Why should I use libstdc++?
|
||||
|
|
@ -475,6 +475,8 @@
|
|||
5.0.1) and later uses localization and formatting code from the system
|
||||
C library (glibc) version 2.2.5 which contains necessary bugfixes.
|
||||
Most GNU/Linux distros make more recent versions available now.
|
||||
libstdc++ 4.6.0 and later require glibc 2.3 or later for this
|
||||
localization and formatting code.
|
||||
</p><p>The guideline is simple: the more recent the C++ library, the
|
||||
more recent the C library. (This is also documented in the main
|
||||
GCC installation instructions.)
|
||||
|
|
|
|||
|
|
@ -87,10 +87,13 @@ compatible.
|
|||
</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Release versioning on the libgcc_s.so binary. </p><p>This is implemented via file names and the ELF
|
||||
<code class="constant">DT_SONAME</code> mechanism (at least on ELF
|
||||
systems). It is versioned as follows:
|
||||
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>gcc-3.0.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.2: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.3: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.4: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.1.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.1.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.2: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.3: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.2: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.3: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.4.x, gcc-4.[0-5].x: on m68k-linux and
|
||||
hppa-linux this is either libgcc_s.so.1 (when configuring
|
||||
<code class="code">--with-sjlj-exceptions</code>) or libgcc_s.so.2. For all
|
||||
others, this is libgcc_s.so.1. </p></li></ul></div></li><li class="listitem"><p>Symbol versioning on the libgcc_s.so binary.</p><p>It is versioned with the following labels and version
|
||||
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>gcc-3.0.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.2: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.3: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.0.4: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.1.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.1.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.2: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.2.3: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.0: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.1: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.2: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.3.3: libgcc_s.so.1</p></li><li class="listitem"><p>gcc-3.4.x, gcc-4.[0-5].x: libgcc_s.so.1</p></li></ul></div><p>For m68k-linux the versions differ as follows: </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>gcc-3.4.x, gcc-4.[0-5].x: libgcc_s.so.1
|
||||
when configuring <code class="code">--with-sjlj-exceptions</code>, or
|
||||
libgcc_s.so.2 </p></li></ul></div><p>For hppa-linux the versions differ as follows: </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>gcc-3.4.x, gcc-4.[0-1].x: either libgcc_s.so.1
|
||||
when configuring <code class="code">--with-sjlj-exceptions</code>, or
|
||||
libgcc_s.so.2 </p></li><li class="listitem"><p>gcc-4.[2-5].x: either libgcc_s.so.3 when configuring
|
||||
<code class="code">--with-sjlj-exceptions</code>) or libgcc_s.so.4
|
||||
</p></li></ul></div></li><li class="listitem"><p>Symbol versioning on the libgcc_s.so binary.</p><p>It is versioned with the following labels and version
|
||||
definitions, where the version definition is the maximum for a
|
||||
particular release. Labels are cumulative. If a particular release
|
||||
is not listed, it has the same version labels as the preceding
|
||||
|
|
@ -464,49 +467,49 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so.
|
|||
<a class="ulink" href="http://gcc.gnu.org/PR24660" target="_top">24660: versioning weak symbols in libstdc++</a>
|
||||
</p><p>
|
||||
<a class="ulink" href="http://gcc.gnu.org/PR19664" target="_top">19664: libstdc++ headers should have pop/push of the visibility around the declarations</a>
|
||||
</p></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="abi.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id530725"></a><p><span class="biblioid">
|
||||
</p></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="abi.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id676635"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://abicheck.sourceforge.net/" target="_top">
|
||||
<em class="citetitle">
|
||||
ABIcheck, a vague idea of checking ABI compatibility
|
||||
</em>
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id659057"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id676655"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.codesourcery.com/public/cxx-abi/" target="_top">
|
||||
<em class="citetitle">
|
||||
C++ ABI Reference
|
||||
</em>
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id659077"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id676674"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.intel.com/cd/software/products/asmo-na/eng/284736.htm" target="_top">
|
||||
<em class="citetitle">
|
||||
Intel Compilers for Linux Compatibility with the GNU Compilers
|
||||
</em>
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id659097"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id676694"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://docs.sun.com/app/docs/doc/817-1984" target="_top">
|
||||
<em class="citetitle">
|
||||
Sun Solaris 2.9 : Linker and Libraries Guide (document 816-1386)
|
||||
</em>
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id659116"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id676714"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://docs.sun.com/app/docs/doc/819-5266" target="_top">
|
||||
<em class="citetitle">
|
||||
Sun Solaris 2.9 : C++ Migration Guide (document 816-2459)
|
||||
</em>
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id659136"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id676734"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://people.redhat.com/drepper/dsohowto.pdf" target="_top">
|
||||
<em class="citetitle">
|
||||
How to Write Shared Libraries
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span></p></div><div class="biblioentry"><a id="id659166"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span></p></div><div class="biblioentry"><a id="id676764"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.arm.com/miscPDFs/8033.pdf" target="_top">
|
||||
<em class="citetitle">
|
||||
C++ ABI for the ARM Architecture
|
||||
</em>
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id659186"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id676784"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1976.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Dynamic Shared Objects: Survey and Issues
|
||||
|
|
@ -514,7 +517,7 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so.
|
|||
</a>
|
||||
. </span><span class="subtitle">
|
||||
ISO C++ J16/06-0046
|
||||
. </span><span class="author"><span class="firstname">Benjamin</span> <span class="surname">Kosnik</span>. </span></p></div><div class="biblioentry"><a id="id659221"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Benjamin</span> <span class="surname">Kosnik</span>. </span></p></div><div class="biblioentry"><a id="id676819"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2013.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Versioning With Namespaces
|
||||
|
|
@ -522,7 +525,7 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so.
|
|||
</a>
|
||||
. </span><span class="subtitle">
|
||||
ISO C++ J16/06-0083
|
||||
. </span><span class="author"><span class="firstname">Benjamin</span> <span class="surname">Kosnik</span>. </span></p></div><div class="biblioentry"><a id="id659256"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Benjamin</span> <span class="surname">Kosnik</span>. </span></p></div><div class="biblioentry"><a id="id676854"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://syrcose.ispras.ru/2009/files/SYRCoSE2009-CfP.pdf" target="_top">
|
||||
<em class="citetitle">
|
||||
Binary Compatibility of Shared Libraries Implemented in C++
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="numerics.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 11. Algorithms"><div class="titlepage"><div><div><h2 class="title"><a id="std.algorithms"></a>Chapter 11.
|
||||
Algorithms
|
||||
<a id="id658154" class="indexterm"></a>
|
||||
<a id="id614280" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="algorithms.html#std.algorithms.mutating">Mutating</a></span></dt><dd><dl><dt><span class="sect2"><a href="algorithms.html#algorithms.mutating.swap"><code class="function">swap</code></a></span></dt></dl></dd></dl></div><p>
|
||||
The neatest accomplishment of the algorithms sect1 is that all the
|
||||
work is done via iterators, not containers directly. This means two
|
||||
|
|
|
|||
|
|
@ -75,11 +75,11 @@ _Alloc_traits</code> have been removed.
|
|||
<span class="type">__alloc</span> to select an underlying allocator that
|
||||
satisfied memory allocation requests. The selection of this
|
||||
underlying allocator was not user-configurable.
|
||||
</p><div class="table"><a id="id654608"></a><p class="title"><b>Table B.1. Extension Allocators</b></p><div class="table-contents"><table summary="Extension Allocators" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Allocator (3.4)</th><th align="left">Header (3.4)</th><th align="left">Allocator (3.[0-3])</th><th align="left">Header (3.[0-3])</th></tr></thead><tbody><tr><td align="left"><code class="classname">__gnu_cxx::new_allocator<T></code></td><td align="left"><code class="filename">ext/new_allocator.h</code></td><td align="left"><code class="classname">std::__new_alloc</code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::malloc_allocator<T></code></td><td align="left"><code class="filename">ext/malloc_allocator.h</code></td><td align="left"><code class="classname">std::__malloc_alloc_template<int></code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::debug_allocator<T></code></td><td align="left"><code class="filename">ext/debug_allocator.h</code></td><td align="left"><code class="classname">std::debug_alloc<T></code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::__pool_alloc<T></code></td><td align="left"><code class="filename">ext/pool_allocator.h</code></td><td align="left"><code class="classname">std::__default_alloc_template<bool,int></code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::__mt_alloc<T></code></td><td align="left"><code class="filename">ext/mt_allocator.h</code></td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left"><code class="classname">__gnu_cxx::bitmap_allocator<T></code></td><td align="left"><code class="filename">ext/bitmap_allocator.h</code></td><td align="left"> </td><td align="left"> </td></tr></tbody></table></div></div><br class="table-break" /><p> Releases after gcc-3.4 have continued to add to the collection
|
||||
</p><div class="table"><a id="id661302"></a><p class="title"><b>Table B.1. Extension Allocators</b></p><div class="table-contents"><table summary="Extension Allocators" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Allocator (3.4)</th><th align="left">Header (3.4)</th><th align="left">Allocator (3.[0-3])</th><th align="left">Header (3.[0-3])</th></tr></thead><tbody><tr><td align="left"><code class="classname">__gnu_cxx::new_allocator<T></code></td><td align="left"><code class="filename">ext/new_allocator.h</code></td><td align="left"><code class="classname">std::__new_alloc</code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::malloc_allocator<T></code></td><td align="left"><code class="filename">ext/malloc_allocator.h</code></td><td align="left"><code class="classname">std::__malloc_alloc_template<int></code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::debug_allocator<T></code></td><td align="left"><code class="filename">ext/debug_allocator.h</code></td><td align="left"><code class="classname">std::debug_alloc<T></code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::__pool_alloc<T></code></td><td align="left"><code class="filename">ext/pool_allocator.h</code></td><td align="left"><code class="classname">std::__default_alloc_template<bool,int></code></td><td align="left"><code class="filename">memory</code></td></tr><tr><td align="left"><code class="classname">__gnu_cxx::__mt_alloc<T></code></td><td align="left"><code class="filename">ext/mt_allocator.h</code></td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left"><code class="classname">__gnu_cxx::bitmap_allocator<T></code></td><td align="left"><code class="filename">ext/bitmap_allocator.h</code></td><td align="left"> </td><td align="left"> </td></tr></tbody></table></div></div><br class="table-break" /><p> Releases after gcc-3.4 have continued to add to the collection
|
||||
of available allocators. All of these new allocators are
|
||||
standard-style. The following table includes details, along with
|
||||
the first released version of GCC that included the extension allocator.
|
||||
</p><div class="table"><a id="id534867"></a><p class="title"><b>Table B.2. Extension Allocators Continued</b></p><div class="table-contents"><table summary="Extension Allocators Continued" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Allocator</th><th align="left">Include</th><th align="left">Version</th></tr></thead><tbody><tr><td align="left"><code class="classname">__gnu_cxx::array_allocator<T></code></td><td align="left"><code class="filename">ext/array_allocator.h</code></td><td align="left">4.0.0</td></tr><tr><td align="left"><code class="classname">__gnu_cxx::throw_allocator<T></code></td><td align="left"><code class="filename">ext/throw_allocator.h</code></td><td align="left">4.2.0</td></tr></tbody></table></div></div><br class="table-break" /><p>
|
||||
</p><div class="table"><a id="id681001"></a><p class="title"><b>Table B.2. Extension Allocators Continued</b></p><div class="table-contents"><table summary="Extension Allocators Continued" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Allocator</th><th align="left">Include</th><th align="left">Version</th></tr></thead><tbody><tr><td align="left"><code class="classname">__gnu_cxx::array_allocator<T></code></td><td align="left"><code class="filename">ext/array_allocator.h</code></td><td align="left">4.0.0</td></tr><tr><td align="left"><code class="classname">__gnu_cxx::throw_allocator<T></code></td><td align="left"><code class="filename">ext/throw_allocator.h</code></td><td align="left">4.2.0</td></tr></tbody></table></div></div><br class="table-break" /><p>
|
||||
Debug mode first appears.
|
||||
</p><p>
|
||||
Precompiled header support <acronym class="acronym">PCH</acronym> support.
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Appendices
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="source_organization.html">Next</a></td></tr></table><hr /></div><div class="appendix" title="Appendix A. Contributing"><div class="titlepage"><div><div><h2 class="title"><a id="appendix.contrib"></a>Appendix A.
|
||||
Contributing
|
||||
<a id="id535897" class="indexterm"></a>
|
||||
<a id="id681889" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="appendix_contributing.html#contrib.list">Contributor Checklist</a></span></dt><dd><dl><dt><span class="sect2"><a href="appendix_contributing.html#list.reading">Reading</a></span></dt><dt><span class="sect2"><a href="appendix_contributing.html#list.copyright">Assignment</a></span></dt><dt><span class="sect2"><a href="appendix_contributing.html#list.getting">Getting Sources</a></span></dt><dt><span class="sect2"><a href="appendix_contributing.html#list.patches">Submitting Patches</a></span></dt></dl></dd><dt><span class="sect1"><a href="source_organization.html">Directory Layout and Source Conventions</a></span></dt><dt><span class="sect1"><a href="source_code_style.html">Coding Style</a></span></dt><dd><dl><dt><span class="sect2"><a href="source_code_style.html#coding_style.bad_identifiers">Bad Identifiers</a></span></dt><dt><span class="sect2"><a href="source_code_style.html#coding_style.example">By Example</a></span></dt></dl></dd><dt><span class="sect1"><a href="documentation_style.html">Documentation Style</a></span></dt><dd><dl><dt><span class="sect2"><a href="documentation_style.html#doc_style.doxygen">Doxygen</a></span></dt><dt><span class="sect2"><a href="documentation_style.html#doc_style.docbook">Docbook</a></span></dt><dt><span class="sect2"><a href="documentation_style.html#doc_style.combines">Combines</a></span></dt></dl></dd><dt><span class="sect1"><a href="source_design_notes.html">Design Notes</a></span></dt></dl></div><p>
|
||||
The GNU C++ Library follows an open development model. Active
|
||||
contributors are assigned maintainer-ship responsibility, and given
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Appendices
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="appendix_gpl.html">Next</a></td></tr></table><hr /></div><div class="appendix" title="Appendix C. Free Software Needs Free Documentation"><div class="titlepage"><div><div><h2 class="title"><a id="appendix.free"></a>Appendix C.
|
||||
Free Software Needs Free Documentation
|
||||
<a id="id636730" class="indexterm"></a>
|
||||
<a id="id553906" class="indexterm"></a>
|
||||
</h2></div></div></div><p>
|
||||
The biggest deficiency in free operating systems is not in the
|
||||
software--it is the lack of good free manuals that we can include in
|
||||
|
|
|
|||
|
|
@ -2,27 +2,27 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Appendix E. GNU Free Documentation License</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="bk01pt04.html" title="Part IV. Appendices" /><link rel="prev" href="appendix_gpl.html" title="Appendix D. GNU General Public License version 3" /><link rel="next" href="../bk02.html" title="" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix E. GNU Free Documentation License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="appendix_gpl.html">Prev</a> </td><th width="60%" align="center">Part IV.
|
||||
Appendices
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="../bk02.html">Next</a></td></tr></table><hr /></div><div class="appendix" title="Appendix E. GNU Free Documentation License"><div class="titlepage"><div><div><h2 class="title"><a id="appendix.gfdl-1.2"></a>Appendix E. GNU Free Documentation License</h2></div></div></div><p>
|
||||
Copyright (C) 2000, 2001, 2002 Free Software Foundation,
|
||||
<abbr class="abbrev">Inc.</abbr> 51 Franklin <abbr class="abbrev">St</abbr>, Fifth Floor,
|
||||
Boston, <abbr class="abbrev">MA</abbr> 02110-1301 <abbr class="abbrev">USA</abbr>. Everyone is permitted to copy and
|
||||
distribute verbatim copies of this license document, but changing it is
|
||||
not allowed.
|
||||
</p><h2><a id="fdl-1-preamble"></a>
|
||||
0. PREAMBLE
|
||||
</h2><p>
|
||||
The purpose of this License is to make a manual, textbook, or other
|
||||
functional and useful document "free" in the sense of freedom: to assure
|
||||
everyone the effective freedom to copy and redistribute it, with or
|
||||
without modifying it, either commercially or noncommercially.
|
||||
Secondarily, this License preserves for the author and publisher a way to
|
||||
get credit for their work, while not being considered responsible for
|
||||
modifications made by others.
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="../bk02.html">Next</a></td></tr></table><hr /></div><div class="appendix" title="Appendix E. GNU Free Documentation License"><div class="titlepage"><div><div><h2 class="title"><a id="appendix.gfdl-1.3"></a>Appendix E. GNU Free Documentation License</h2></div></div></div><p>Version 1.3, 3 November 2008</p><p>
|
||||
Copyright © 2000, 2001, 2002, 2007, 2008
|
||||
<a class="ulink" href="http://www.fsf.org/" target="_top">Free Software Foundation, Inc.</a>
|
||||
</p><p>
|
||||
This License is a kind of "copyleft", which means that derivative works of
|
||||
the document must themselves be free in the same sense. It complements
|
||||
the GNU General Public License, which is a copyleft license designed for
|
||||
free software.
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
</p><h3><a id="fdl-1-section0"></a>
|
||||
0. PREAMBLE
|
||||
</h3><p>
|
||||
The purpose of this License is to make a manual, textbook, or other
|
||||
functional and useful document “free” in the sense of freedom:
|
||||
to assure everyone the effective freedom to copy and redistribute it, with
|
||||
or without modifying it, either commercially or
|
||||
noncommercially. Secondarily, this License preserves for the author and
|
||||
publisher a way to get credit for their work, while not being considered
|
||||
responsible for modifications made by others.
|
||||
</p><p>
|
||||
This License is a kind of “copyleft”, which means that
|
||||
derivative works of the document must themselves be free in the same
|
||||
sense. It complements the GNU General Public License, which is a copyleft
|
||||
license designed for free software.
|
||||
</p><p>
|
||||
We have designed this License in order to use it for manuals for free
|
||||
software, because free software needs free documentation: a free program
|
||||
|
|
@ -30,84 +30,89 @@
|
|||
does. But this License is not limited to software manuals; it can be used
|
||||
for any textual work, regardless of subject matter or whether it is
|
||||
published as a printed book. We recommend this License principally for
|
||||
works whose purpose is instruction or reference.</p><h2><a id="fdl-1-definitions"></a>
|
||||
works whose purpose is instruction or reference.
|
||||
</p><h3><a id="fdl-1-section1"></a>
|
||||
1. APPLICABILITY AND DEFINITIONS
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
This License applies to any manual or other work, in any medium, that
|
||||
contains a notice placed by the copyright holder saying it can be
|
||||
distributed under the terms of this License. Such a notice grants a
|
||||
world-wide, royalty-free license, unlimited in duration, to use that work
|
||||
under the conditions stated herein. The "Document", below, refers to any
|
||||
such manual or work. Any member of the public is a licensee, and is
|
||||
addressed as "you". You accept the license if you copy, modify or
|
||||
distribute the work in a way requiring permission under copyright
|
||||
law.
|
||||
under the conditions stated herein. The “Document”, below,
|
||||
refers to any such manual or work. Any member of the public is a licensee,
|
||||
and is addressed as “you”. You accept the license if you copy,
|
||||
modify or distribute the work in a way requiring permission under
|
||||
copyright law.
|
||||
</p><p>
|
||||
A "Modified Version" of the Document means any work containing the
|
||||
Document or a portion of it, either copied verbatim, or with modifications
|
||||
and/or translated into another language.
|
||||
A “Modified Version” of the Document means any work containing
|
||||
the Document or a portion of it, either copied verbatim, or with
|
||||
modifications and/or translated into another language.
|
||||
</p><p>
|
||||
A "Secondary Section" is a named appendix or a front-matter section of the
|
||||
Document that deals exclusively with the relationship of the publishers or
|
||||
authors of the Document to the Document's overall subject (or to related
|
||||
matters) and contains nothing that could fall directly within that overall
|
||||
subject. (Thus, if the Document is in part a textbook of mathematics, a
|
||||
Secondary Section may not explain any mathematics.) The relationship
|
||||
could be a matter of historical connection with the subject or with
|
||||
related matters, or of legal, commercial, philosophical, ethical or
|
||||
political position regarding them.
|
||||
A “Secondary Section” is a named appendix or a front-matter
|
||||
section of the Document that deals exclusively with the relationship of
|
||||
the publishers or authors of the Document to the Document’s overall
|
||||
subject (or to related matters) and contains nothing that could fall
|
||||
directly within that overall subject. (Thus, if the Document is in part a
|
||||
textbook of mathematics, a Secondary Section may not explain any
|
||||
mathematics.) The relationship could be a matter of historical connection
|
||||
with the subject or with related matters, or of legal, commercial,
|
||||
philosophical, ethical or political position regarding them.
|
||||
</p><p>
|
||||
The "Invariant Sections" are certain Secondary Sections whose titles are
|
||||
designated, as being those of Invariant Sections, in the notice that says
|
||||
that the Document is released under this License. If a section does not
|
||||
fit the above definition of Secondary then it is not allowed to be
|
||||
designated as Invariant. The Document may contain zero Invariant
|
||||
The “Invariant Sections” are certain Secondary Sections whose
|
||||
titles are designated, as being those of Invariant Sections, in the notice
|
||||
that says that the Document is released under this License. If a section
|
||||
does not fit the above definition of Secondary then it is not allowed to
|
||||
be designated as Invariant. The Document may contain zero Invariant
|
||||
Sections. If the Document does not identify any Invariant Sections then
|
||||
there are none.
|
||||
</p><p>
|
||||
The "Cover Texts" are certain short passages of text that are listed, as
|
||||
Front-Cover Texts or Back-Cover Texts, in the notice that says that the
|
||||
Document is released under this License. A Front-Cover Text may be at
|
||||
most 5 words, and a Back-Cover Text may be at most 25 words.
|
||||
The “Cover Texts” are certain short passages of text that are
|
||||
listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says
|
||||
that the Document is released under this License. A Front-Cover Text may
|
||||
be at most 5 words, and a Back-Cover Text may be at most 25 words.
|
||||
</p><p>
|
||||
A "Transparent" copy of the Document means a machine-readable copy,
|
||||
represented in a format whose specification is available to the general
|
||||
public, that is suitable for revising the document straightforwardly with
|
||||
generic text editors or (for images composed of pixels) generic paint
|
||||
programs or (for drawings) some widely available drawing editor, and that
|
||||
is suitable for input to text formatters or for automatic translation to a
|
||||
variety of formats suitable for input to text formatters. A copy made in
|
||||
an otherwise Transparent file format whose markup, or absence of markup,
|
||||
has been arranged to thwart or discourage subsequent modification by
|
||||
readers is not Transparent. An image format is not Transparent if used
|
||||
for any substantial amount of text. A copy that is not "Transparent" is
|
||||
called "Opaque".
|
||||
A “Transparent” copy of the Document means a machine-readable
|
||||
copy, represented in a format whose specification is available to the
|
||||
general public, that is suitable for revising the document
|
||||
straightforwardly with generic text editors or (for images composed of
|
||||
pixels) generic paint programs or (for drawings) some widely available
|
||||
drawing editor, and that is suitable for input to text formatters or for
|
||||
automatic translation to a variety of formats suitable for input to text
|
||||
formatters. A copy made in an otherwise Transparent file format whose
|
||||
markup, or absence of markup, has been arranged to thwart or discourage
|
||||
subsequent modification by readers is not Transparent. An image format is
|
||||
not Transparent if used for any substantial amount of text. A copy that is
|
||||
not “Transparent” is called “Opaque”.
|
||||
</p><p>
|
||||
Examples of suitable formats for Transparent copies include plain ASCII
|
||||
without markup, Texinfo input format, LaTeX input format, SGML or XML
|
||||
using a publicly available DTD, and standard-conforming simple HTML,
|
||||
PostScript or PDF designed for human modification. Examples of
|
||||
transparent image formats include PNG, XCF and JPG. Opaque formats
|
||||
include proprietary formats that can be read and edited only by
|
||||
proprietary word processors, SGML or XML for which the DTD and/or
|
||||
processing tools are not generally available, and the machine-generated
|
||||
HTML, PostScript or PDF produced by some word processors for output
|
||||
purposes only.
|
||||
PostScript or PDF designed for human modification. Examples of transparent
|
||||
image formats include PNG, XCF and JPG. Opaque formats include proprietary
|
||||
formats that can be read and edited only by proprietary word processors,
|
||||
SGML or XML for which the DTD and/or processing tools are not generally
|
||||
available, and the machine-generated HTML, PostScript or PDF produced by
|
||||
some word processors for output purposes only.
|
||||
</p><p>
|
||||
The "Title Page" means, for a printed book, the title page itself, plus
|
||||
such following pages as are needed to hold, legibly, the material this
|
||||
License requires to appear in the title page. For works in formats which
|
||||
do not have any title page as such, "Title Page" means the text near the
|
||||
most prominent appearance of the work's title, preceding the beginning of
|
||||
the body of the text.
|
||||
The “Title Page” means, for a printed book, the title page
|
||||
itself, plus such following pages as are needed to hold, legibly, the
|
||||
material this License requires to appear in the title page. For works in
|
||||
formats which do not have any title page as such, “Title Page”
|
||||
means the text near the most prominent appearance of the work’s
|
||||
title, preceding the beginning of the body of the text.
|
||||
</p><p>
|
||||
A section "Entitled XYZ" means a named subunit of the Document whose title
|
||||
either is precisely XYZ or contains XYZ in parentheses following text that
|
||||
translates XYZ in another language. (Here XYZ stands for a specific
|
||||
section name mentioned below, such as "Acknowledgements", "Dedications",
|
||||
"Endorsements", or "History".) To "Preserve the Title" of such a section
|
||||
when you modify the Document means that it remains a section "Entitled
|
||||
XYZ" according to this definition.
|
||||
The “publisher” means any person or entity that distributes
|
||||
copies of the Document to the public.
|
||||
</p><p>
|
||||
A section “Entitled XYZ” means a named subunit of the Document
|
||||
whose title either is precisely XYZ or contains XYZ in parentheses
|
||||
following text that translates XYZ in another language. (Here XYZ stands
|
||||
for a specific section name mentioned below, such as
|
||||
“Acknowledgements”, “Dedications”,
|
||||
“Endorsements”, or “History”.) To “Preserve
|
||||
the Title” of such a section when you modify the Document means that
|
||||
it remains a section “Entitled XYZ” according to this
|
||||
definition.
|
||||
</p><p>
|
||||
The Document may include Warranty Disclaimers next to the notice which
|
||||
states that this License applies to the Document. These Warranty
|
||||
|
|
@ -115,9 +120,9 @@
|
|||
but only as regards disclaiming warranties: any other implication that
|
||||
these Warranty Disclaimers may have is void and has no effect on the
|
||||
meaning of this License.
|
||||
</p><h2><a id="VerbatimCopying"></a>
|
||||
</p><h3><a id="fdl-1-section2"></a>
|
||||
2. VERBATIM COPYING
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
You may copy and distribute the Document in any medium, either
|
||||
commercially or noncommercially, provided that this License, the copyright
|
||||
notices, and the license notice saying this License applies to the
|
||||
|
|
@ -125,26 +130,25 @@
|
|||
conditions whatsoever to those of this License. You may not use technical
|
||||
measures to obstruct or control the reading or further copying of the
|
||||
copies you make or distribute. However, you may accept compensation in
|
||||
exchange for copies. If you distribute a large enough number of copies
|
||||
you must also follow the conditions in section 3.
|
||||
exchange for copies. If you distribute a large enough number of copies you
|
||||
must also follow the conditions in section 3.
|
||||
</p><p>
|
||||
You may also lend copies, under the same conditions stated above, and you
|
||||
may publicly display copies.
|
||||
</p><h2><a id="QuantityCopying"></a>
|
||||
</p><h3><a id="fdl-1-section3"></a>
|
||||
3. COPYING IN QUANTITY
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
If you publish printed copies (or copies in media that commonly have
|
||||
printed covers) of the Document, numbering more than 100, and the
|
||||
Document's license notice requires Cover Texts, you must enclose the
|
||||
copies in covers that carry, clearly and legibly, all these Cover Texts:
|
||||
Front-Cover Texts on the front cover, and Back-Cover Texts on the back
|
||||
cover. Both covers must also clearly and legibly identify you as the
|
||||
Document’s license notice requires Cover Texts, you must enclose
|
||||
the copies in covers that carry, clearly and legibly, all these Cover
|
||||
Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the
|
||||
back cover. Both covers must also clearly and legibly identify you as the
|
||||
publisher of these copies. The front cover must present the full title
|
||||
with all words of the title equally prominent and visible. You may add
|
||||
other material on the covers in addition. Copying with changes limited to
|
||||
the covers, as long as they preserve the title of the Document and satisfy
|
||||
these conditions, can be treated as verbatim copying in other
|
||||
respects.
|
||||
these conditions, can be treated as verbatim copying in other respects.
|
||||
</p><p>
|
||||
If the required texts for either cover are too voluminous to fit legibly,
|
||||
you should put the first ones listed (as many as fit reasonably) on the
|
||||
|
|
@ -164,17 +168,16 @@
|
|||
</p><p>
|
||||
It is requested, but not required, that you contact the authors of the
|
||||
Document well before redistributing any large number of copies, to give
|
||||
them a chance to provide you with an updated version of the
|
||||
Document.
|
||||
</p><h2><a id="Modifications"></a>
|
||||
them a chance to provide you with an updated version of the Document.
|
||||
</p><h3><a id="fdl-1-section4"></a>
|
||||
4. MODIFICATIONS
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
You may copy and distribute a Modified Version of the Document under the
|
||||
conditions of sections 2 and 3 above, provided that you release the
|
||||
Modified Version under precisely this License, with the Modified Version
|
||||
filling the role of the Document, thus licensing distribution and
|
||||
modification of the Modified Version to whoever possesses a copy of it.
|
||||
In addition, you must do these things in the Modified Version:
|
||||
modification of the Modified Version to whoever possesses a copy of it. In
|
||||
addition, you must do these things in the Modified Version:
|
||||
</p><div class="orderedlist"><ol class="orderedlist" type="A"><li class="listitem">
|
||||
Use in the Title Page (and on the covers, if any) a title distinct
|
||||
from that of the Document, and from those of previous versions (which
|
||||
|
|
@ -201,40 +204,42 @@
|
|||
terms of this License, in the form shown in the Addendum below.
|
||||
</li><li class="listitem">
|
||||
Preserve in that license notice the full lists of Invariant Sections
|
||||
and required Cover Texts given in the Document's license notice.
|
||||
and required Cover Texts given in the Document’s license
|
||||
notice.
|
||||
</li><li class="listitem">
|
||||
Include an unaltered copy of this License.
|
||||
</li><li class="listitem">
|
||||
Preserve the section Entitled "History", Preserve its Title, and add
|
||||
to it an item stating at least the title, year, new authors, and
|
||||
publisher of the Modified Version as given on the Title Page. If
|
||||
there is no section Entitled "History" in the Document, create one
|
||||
stating the title, year, authors, and publisher of the Document as
|
||||
given on its Title Page, then add an item describing the Modified
|
||||
Version as stated in the previous sentence.
|
||||
Preserve the section Entitled “History”, Preserve its
|
||||
Title, and add to it an item stating at least the title, year, new
|
||||
authors, and publisher of the Modified Version as given on the Title
|
||||
Page. If there is no section Entitled “History” in the
|
||||
Document, create one stating the title, year, authors, and publisher
|
||||
of the Document as given on its Title Page, then add an item
|
||||
describing the Modified Version as stated in the previous sentence.
|
||||
</li><li class="listitem">
|
||||
Preserve the network location, if any, given in the Document for
|
||||
public access to a Transparent copy of the Document, and likewise the
|
||||
network locations given in the Document for previous versions it was
|
||||
based on. These may be placed in the "History" section. You may omit
|
||||
a network location for a work that was published at least four years
|
||||
before the Document itself, or if the original publisher of the
|
||||
version it refers to gives permission.
|
||||
based on. These may be placed in the “History”
|
||||
section. You may omit a network location for a work that was published
|
||||
at least four years before the Document itself, or if the original
|
||||
publisher of the version it refers to gives permission.
|
||||
</li><li class="listitem">
|
||||
For any section Entitled "Acknowledgements" or "Dedications", Preserve
|
||||
the Title of the section, and preserve in the section all the
|
||||
substance and tone of each of the contributor acknowledgements and/or
|
||||
dedications given therein.
|
||||
For any section Entitled “Acknowledgements” or
|
||||
“Dedications”, Preserve the Title of the section, and
|
||||
preserve in the section all the substance and tone of each of the
|
||||
contributor acknowledgements and/or dedications given therein.
|
||||
</li><li class="listitem">
|
||||
Preserve all the Invariant Sections of the Document, unaltered in
|
||||
their text and in their titles. Section numbers or the equivalent are
|
||||
not considered part of the section titles.
|
||||
</li><li class="listitem">
|
||||
Delete any section Entitled "Endorsements". Such a section may not be
|
||||
included in the Modified Version.
|
||||
Delete any section Entitled “Endorsements”. Such a section
|
||||
may not be included in the Modified Version.
|
||||
</li><li class="listitem">
|
||||
Do not retitle any existing section to be Entitled "Endorsements" or
|
||||
to conflict in title with any Invariant Section.
|
||||
Do not retitle any existing section to be Entitled
|
||||
“Endorsements” or to conflict in title with any Invariant
|
||||
Section.
|
||||
</li><li class="listitem">
|
||||
Preserve any Warranty Disclaimers.
|
||||
</li></ol></div><p>
|
||||
|
|
@ -242,13 +247,14 @@
|
|||
that qualify as Secondary Sections and contain no material copied from the
|
||||
Document, you may at your option designate some or all of these sections
|
||||
as invariant. To do this, add their titles to the list of Invariant
|
||||
Sections in the Modified Version's license notice. These titles must be
|
||||
distinct from any other section titles.
|
||||
Sections in the Modified Version’s license notice. These titles
|
||||
must be distinct from any other section titles.
|
||||
</p><p>
|
||||
You may add a section Entitled "Endorsements", provided it contains
|
||||
nothing but endorsements of your Modified Version by various parties--for
|
||||
example, statements of peer review or that the text has been approved by
|
||||
an organization as the authoritative definition of a standard.
|
||||
You may add a section Entitled “Endorsements”, provided it
|
||||
contains nothing but endorsements of your Modified Version by various
|
||||
parties — for example, statements of peer review or that the text
|
||||
has been approved by an organization as the authoritative definition of a
|
||||
standard.
|
||||
</p><p>
|
||||
You may add a passage of up to five words as a Front-Cover Text, and a
|
||||
passage of up to 25 words as a Back-Cover Text, to the end of the list of
|
||||
|
|
@ -263,9 +269,9 @@
|
|||
The author(s) and publisher(s) of the Document do not by this License give
|
||||
permission to use their names for publicity for or to assert or imply
|
||||
endorsement of any Modified Version.
|
||||
</p><h2><a id="Combining"></a>
|
||||
</p><h3><a id="fdl-1-section5"></a>
|
||||
5. COMBINING DOCUMENTS
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
You may combine the Document with other documents released under this
|
||||
License, under the terms defined in section 4 above for modified versions,
|
||||
provided that you include in the combination all of the Invariant Sections
|
||||
|
|
@ -278,18 +284,19 @@
|
|||
are multiple Invariant Sections with the same name but different contents,
|
||||
make the title of each such section unique by adding at the end of it, in
|
||||
parentheses, the name of the original author or publisher of that section
|
||||
if known, or else a unique number. Make the same adjustment to the
|
||||
section titles in the list of Invariant Sections in the license notice of
|
||||
the combined work.
|
||||
if known, or else a unique number. Make the same adjustment to the section
|
||||
titles in the list of Invariant Sections in the license notice of the
|
||||
combined work.
|
||||
</p><p>
|
||||
In the combination, you must combine any sections Entitled "History" in
|
||||
the various original documents, forming one section Entitled "History";
|
||||
likewise combine any sections Entitled "Acknowledgements", and any
|
||||
sections Entitled "Dedications". You must delete all sections Entitled
|
||||
"Endorsements".
|
||||
</p><h2><a id="Collections"></a>
|
||||
In the combination, you must combine any sections Entitled
|
||||
“History” in the various original documents, forming one
|
||||
section Entitled “History”; likewise combine any sections
|
||||
Entitled “Acknowledgements”, and any sections Entitled
|
||||
“Dedications”. You must delete all sections Entitled
|
||||
“Endorsements”.
|
||||
</p><h3><a id="fdl-1-section6"></a>
|
||||
6. COLLECTIONS OF DOCUMENTS
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
You may make a collection consisting of the Document and other documents
|
||||
released under this License, and replace the individual copies of this
|
||||
License in the various documents with a single copy that is included in
|
||||
|
|
@ -300,27 +307,27 @@
|
|||
it individually under this License, provided you insert a copy of this
|
||||
License into the extracted document, and follow this License in all other
|
||||
respects regarding verbatim copying of that document.
|
||||
</p><h2><a id="Aggregation"></a>
|
||||
</p><h3><a id="fdl-1-section7"></a>
|
||||
7. AGGREGATION WITH INDEPENDENT WORKS
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
A compilation of the Document or its derivatives with other separate and
|
||||
independent documents or works, in or on a volume of a storage or
|
||||
distribution medium, is called an "aggregate" if the copyright resulting
|
||||
from the compilation is not used to limit the legal rights of the
|
||||
compilation's users beyond what the individual works permit. When the
|
||||
Document is included in an aggregate, this License does not apply to the
|
||||
other works in the aggregate which are not themselves derivative works of
|
||||
the Document.
|
||||
distribution medium, is called an “aggregate” if the copyright
|
||||
resulting from the compilation is not used to limit the legal rights of
|
||||
the compilation’s users beyond what the individual works
|
||||
permit. When the Document is included in an aggregate, this License does
|
||||
not apply to the other works in the aggregate which are not themselves
|
||||
derivative works of the Document.
|
||||
</p><p>
|
||||
If the Cover Text requirement of section 3 is applicable to these copies
|
||||
of the Document, then if the Document is less than one half of the entire
|
||||
aggregate, the Document's Cover Texts may be placed on covers that bracket
|
||||
the Document within the aggregate, or the electronic equivalent of covers
|
||||
if the Document is in electronic form. Otherwise they must appear on
|
||||
printed covers that bracket the whole aggregate.
|
||||
</p><h2><a id="Translation"></a>
|
||||
aggregate, the Document’s Cover Texts may be placed on covers that
|
||||
bracket the Document within the aggregate, or the electronic equivalent of
|
||||
covers if the Document is in electronic form. Otherwise they must appear
|
||||
on printed covers that bracket the whole aggregate.
|
||||
</p><h3><a id="fdl-1-section8"></a>
|
||||
8. TRANSLATION
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
Translation is considered a kind of modification, so you may distribute
|
||||
translations of the Document under the terms of section 4. Replacing
|
||||
Invariant Sections with translations requires special permission from
|
||||
|
|
@ -333,57 +340,102 @@
|
|||
disagreement between the translation and the original version of this
|
||||
License or a notice or disclaimer, the original version will prevail.
|
||||
</p><p>
|
||||
If a section in the Document is Entitled "Acknowledgements",
|
||||
"Dedications", or "History", the requirement (section 4) to Preserve its
|
||||
Title (section 1) will typically require changing the actual title.
|
||||
</p><h2><a id="fdl-1-termination"></a>
|
||||
If a section in the Document is Entitled “Acknowledgements”,
|
||||
“Dedications”, or “History”, the requirement
|
||||
(section 4) to Preserve its Title (section 1) will typically require
|
||||
changing the actual title.
|
||||
</p><h3><a id="fdl-1-section9"></a>
|
||||
9. TERMINATION
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
You may not copy, modify, sublicense, or distribute the Document except as
|
||||
expressly provided for under this License. Any other attempt to copy,
|
||||
modify, sublicense or distribute the Document is void, and will
|
||||
automatically terminate your rights under this License. However, parties
|
||||
who have received copies, or rights, from you under this License will not
|
||||
have their licenses terminated so long as such parties remain in full
|
||||
compliance.
|
||||
</p><h2><a id="FutureRevisions"></a>
|
||||
expressly provided under this License. Any attempt otherwise to copy,
|
||||
modify, sublicense, or distribute it is void, and will automatically
|
||||
terminate your rights under this License.
|
||||
</p><p>
|
||||
However, if you cease all violation of this License, then your license
|
||||
from a particular copyright holder is reinstated (a) provisionally, unless
|
||||
and until the copyright holder explicitly and finally terminates your
|
||||
license, and (b) permanently, if the copyright holder fails to notify you
|
||||
of the violation by some reasonable means prior to 60 days after the
|
||||
cessation.
|
||||
</p><p>
|
||||
Moreover, your license from a particular copyright holder is reinstated
|
||||
permanently if the copyright holder notifies you of the violation by some
|
||||
reasonable means, this is the first time you have received notice of
|
||||
violation of this License (for any work) from that copyright holder, and
|
||||
you cure the violation prior to 30 days after your receipt of the notice.
|
||||
</p><p>
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under this
|
||||
License. If your rights have been terminated and not permanently
|
||||
reinstated, receipt of a copy of some or all of the same material does not
|
||||
give you any rights to use it.
|
||||
</p><h3><a id="fdl-1-section10"></a>
|
||||
10. FUTURE REVISIONS OF THIS LICENSE
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
The Free Software Foundation may publish new, revised versions of the GNU
|
||||
Free Documentation License from time to time. Such new versions will be
|
||||
similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns. See <a class="ulink" href="http://www.gnu.org/copyleft/" target="_top">http://www.gnu.org/copyleft/</a>.
|
||||
address new problems or concerns. See
|
||||
<a class="ulink" href="http://www.gnu.org/copyleft/" target="_top">Copyleft</a>.
|
||||
</p><p>
|
||||
Each version of the License is given a distinguishing version number. If
|
||||
the Document specifies that a particular numbered version of this License
|
||||
"or any later version" applies to it, you have the option of following the
|
||||
terms and conditions either of that specified version or of any later
|
||||
version that has been published (not as a draft) by the Free Software
|
||||
Foundation. If the Document does not specify a version number of this
|
||||
License, you may choose any version ever published (not as a draft) by the
|
||||
Free Software Foundation.
|
||||
</p><h2><a id="HowToUse"></a>
|
||||
“or any later version” applies to it, you have the option of
|
||||
following the terms and conditions either of that specified version or of
|
||||
any later version that has been published (not as a draft) by the Free
|
||||
Software Foundation. If the Document does not specify a version number of
|
||||
this License, you may choose any version ever published (not as a draft)
|
||||
by the Free Software Foundation. If the Document specifies that a proxy
|
||||
can decide which future versions of this License can be used, that
|
||||
proxy’s public statement of acceptance of a version permanently
|
||||
authorizes you to choose that version for the Document.
|
||||
</p><h3><a id="fdl-1-section11"></a>
|
||||
11. RELICENSING
|
||||
</h3><p>
|
||||
“Massive Multiauthor Collaboration Site” (or “MMC
|
||||
Site”) means any World Wide Web server that publishes copyrightable
|
||||
works and also provides prominent facilities for anybody to edit those
|
||||
works. A public wiki that anybody can edit is an example of such a
|
||||
server. A “Massive Multiauthor Collaboration” (or
|
||||
“MMC”) contained in the site means any set of copyrightable
|
||||
works thus published on the MMC site.
|
||||
</p><p>
|
||||
“CC-BY-SA” means the Creative Commons Attribution-Share Alike
|
||||
3.0 license published by Creative Commons Corporation, a not-for-profit
|
||||
corporation with a principal place of business in San Francisco,
|
||||
California, as well as future copyleft versions of that license published
|
||||
by that same organization.
|
||||
</p><p>
|
||||
“Incorporate” means to publish or republish a Document, in
|
||||
whole or in part, as part of another Document.
|
||||
</p><p>
|
||||
An MMC is “eligible for relicensing” if it is licensed under
|
||||
this License, and if all works that were first published under this
|
||||
License somewhere other than this MMC, and subsequently incorporated in
|
||||
whole or in part into the MMC, (1) had no cover texts or invariant
|
||||
sections, and (2) were thus incorporated prior to November 1, 2008.
|
||||
</p><p>
|
||||
The operator of an MMC Site may republish an MMC contained in the site
|
||||
under CC-BY-SA on the same site at any time before August 1, 2009,
|
||||
provided the MMC is eligible for relicensing.
|
||||
</p><h3><a id="fdl-1-addendum"></a>
|
||||
ADDENDUM: How to use this License for your documents
|
||||
</h2><p>
|
||||
</h3><p>
|
||||
To use this License in a document you have written, include a copy of the
|
||||
License in the document and put the following copyright and license
|
||||
notices just after the title page:
|
||||
</p><div class="blockquote"><blockquote class="blockquote"><p>
|
||||
Copyright (C) YEAR YOUR NAME.
|
||||
</p><p>
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.2 or
|
||||
any later version published by the Free Software Foundation; with no
|
||||
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
|
||||
copy of the license is included in the section entitled "GNU Free
|
||||
Documentation License".
|
||||
</p></blockquote></div><p>
|
||||
</p><pre class="screen">Copyright © YEAR YOUR NAME
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document under the
|
||||
terms of the GNU Free Documentation License, Version 1.3 or any later version
|
||||
published by the Free Software Foundation; with no Invariant Sections, no
|
||||
Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in
|
||||
the section entitled “GNU Free Documentation License”.</pre><p>
|
||||
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
|
||||
replace the "with...Texts." line with this:
|
||||
</p><div class="blockquote"><blockquote class="blockquote"><p>
|
||||
with the Invariant Sections being LIST THEIR TITLES, with the
|
||||
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
|
||||
</p></blockquote></div><p>
|
||||
replace the “with… Texts.” line with this:
|
||||
</p><pre class="screen">with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts
|
||||
being LIST, and with the Back-Cover Texts being LIST.</pre><p>
|
||||
If you have Invariant Sections without Cover Texts, or some other
|
||||
combination of the three, merge those two alternatives to suit the
|
||||
situation.
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@
|
|||
</p><p>
|
||||
The precise terms and conditions for copying, distribution and modification
|
||||
follow.
|
||||
</p><h2><a id="id637048"></a>
|
||||
</p><h2><a id="id558362"></a>
|
||||
TERMS AND CONDITIONS
|
||||
</h2><h2><a id="gpl-3-definitions"></a>
|
||||
0. Definitions.
|
||||
|
|
@ -619,7 +619,7 @@
|
|||
waiver of all civil liability in connection with the Program, unless a
|
||||
warranty or assumption of liability accompanies a copy of the Program in
|
||||
return for a fee.
|
||||
</p><h2><a id="id591865"></a>
|
||||
</p><h2><a id="id592394"></a>
|
||||
END OF TERMS AND CONDITIONS
|
||||
</h2><h2><a id="HowToApply"></a>
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="concurrency.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 14. Atomics"><div class="titlepage"><div><div><h2 class="title"><a id="std.atomics"></a>Chapter 14.
|
||||
Atomics
|
||||
<a id="id546403" class="indexterm"></a>
|
||||
<a id="id610980" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="atomics.html#std.atomics.api">API Reference</a></span></dt></dl></div><p>
|
||||
Facilities for atomic operations.
|
||||
</p><div class="sect1" title="API Reference"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.atomics.api"></a>API Reference</h2></div></div></div><p>
|
||||
|
|
|
|||
|
|
@ -17,8 +17,8 @@ ISO Standard (e.g., statistical analysis). While there are a lot of
|
|||
really useful things that are used by a lot of people, the Standards
|
||||
Committee couldn't include everything, and so a lot of those
|
||||
<span class="quote">“<span class="quote">obvious</span>”</span> classes didn't get included.
|
||||
</p><p>Known Issues include many of the limitations of its immediate ancestor.</p><p>Portability notes and known implementation limitations are as follows.</p><div class="sect3" title="No ios_base"><div class="titlepage"><div><div><h4 class="title"><a id="id638290"></a>No <code class="code">ios_base</code></h4></div></div></div><p> At least some older implementations don't have <code class="code">std::ios_base</code>, so you should use <code class="code">std::ios::badbit</code>, <code class="code">std::ios::failbit</code> and <code class="code">std::ios::eofbit</code> and <code class="code">std::ios::goodbit</code>.
|
||||
</p></div><div class="sect3" title="No cout in ostream.h, no cin in istream.h"><div class="titlepage"><div><div><h4 class="title"><a id="id638322"></a>No <code class="code">cout</code> in <code class="code">ostream.h</code>, no <code class="code">cin</code> in <code class="code">istream.h</code></h4></div></div></div><p>
|
||||
</p><p>Known Issues include many of the limitations of its immediate ancestor.</p><p>Portability notes and known implementation limitations are as follows.</p><div class="sect3" title="No ios_base"><div class="titlepage"><div><div><h4 class="title"><a id="id523872"></a>No <code class="code">ios_base</code></h4></div></div></div><p> At least some older implementations don't have <code class="code">std::ios_base</code>, so you should use <code class="code">std::ios::badbit</code>, <code class="code">std::ios::failbit</code> and <code class="code">std::ios::eofbit</code> and <code class="code">std::ios::goodbit</code>.
|
||||
</p></div><div class="sect3" title="No cout in ostream.h, no cin in istream.h"><div class="titlepage"><div><div><h4 class="title"><a id="id523904"></a>No <code class="code">cout</code> in <code class="code">ostream.h</code>, no <code class="code">cin</code> in <code class="code">istream.h</code></h4></div></div></div><p>
|
||||
In earlier versions of the standard,
|
||||
<code class="filename">fstream.h</code>,
|
||||
<code class="filename">ostream.h</code>
|
||||
|
|
@ -44,7 +44,7 @@ considered replaced and rewritten.
|
|||
archived. The code is considered replaced and rewritten.
|
||||
</p><p>
|
||||
Portability notes and known implementation limitations are as follows.
|
||||
</p><div class="sect3" title="Namespace std:: not supported"><div class="titlepage"><div><div><h4 class="title"><a id="id651614"></a>Namespace <code class="code">std::</code> not supported</h4></div></div></div><p>
|
||||
</p><div class="sect3" title="Namespace std:: not supported"><div class="titlepage"><div><div><h4 class="title"><a id="id612997"></a>Namespace <code class="code">std::</code> not supported</h4></div></div></div><p>
|
||||
Some care is required to support C++ compiler and or library
|
||||
implementation that do not have the standard library in
|
||||
<code class="code">namespace std</code>.
|
||||
|
|
@ -108,7 +108,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [
|
|||
AC_DEFINE(HAVE_NAMESPACE_STD,,[Define if g++ supports namespace std. ])
|
||||
fi
|
||||
])
|
||||
</pre></div><div class="sect3" title="Illegal iterator usage"><div class="titlepage"><div><div><h4 class="title"><a id="id651737"></a>Illegal iterator usage</h4></div></div></div><p>
|
||||
</pre></div><div class="sect3" title="Illegal iterator usage"><div class="titlepage"><div><div><h4 class="title"><a id="id613120"></a>Illegal iterator usage</h4></div></div></div><p>
|
||||
The following illustrate implementation-allowed illegal iterator
|
||||
use, and then correct use.
|
||||
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
|
||||
|
|
@ -121,7 +121,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [
|
|||
</p></li><li class="listitem"><p>
|
||||
<code class="code">if (iterator)</code> won't work any more => use
|
||||
<code class="code">if (iterator != iterator_type())</code>
|
||||
</p></li></ul></div></div><div class="sect3" title="isspace from cctype is a macro"><div class="titlepage"><div><div><h4 class="title"><a id="id651798"></a><code class="code">isspace</code> from <code class="filename">cctype</code> is a macro
|
||||
</p></li></ul></div></div><div class="sect3" title="isspace from cctype is a macro"><div class="titlepage"><div><div><h4 class="title"><a id="id613181"></a><code class="code">isspace</code> from <code class="filename">cctype</code> is a macro
|
||||
</h4></div></div></div><p>
|
||||
Glibc 2.0.x and 2.1.x define <code class="filename">ctype.h</code> functionality as macros
|
||||
(isspace, isalpha etc.).
|
||||
|
|
@ -154,7 +154,7 @@ std:: (__ctype_b[(int) ( ( 'X' ) )] & (unsigned short int) _ISspace ) ;
|
|||
(<code class="filename">ctype.h</code>) and the
|
||||
definitions in namespace <code class="code">std::</code>
|
||||
(<code class="code"><cctype></code>).
|
||||
</p></div><div class="sect3" title="No vector::at, deque::at, string::at"><div class="titlepage"><div><div><h4 class="title"><a id="id590368"></a>No <code class="code">vector::at</code>, <code class="code">deque::at</code>, <code class="code">string::at</code></h4></div></div></div><p>
|
||||
</p></div><div class="sect3" title="No vector::at, deque::at, string::at"><div class="titlepage"><div><div><h4 class="title"><a id="id613274"></a>No <code class="code">vector::at</code>, <code class="code">deque::at</code>, <code class="code">string::at</code></h4></div></div></div><p>
|
||||
One solution is to add an autoconf-test for this:
|
||||
</p><pre class="programlisting">
|
||||
AC_MSG_CHECKING(for container::at)
|
||||
|
|
@ -180,7 +180,7 @@ AC_DEFINE(HAVE_CONTAINER_AT)],
|
|||
</pre><p>
|
||||
If you are using other (non-GNU) compilers it might be a good idea
|
||||
to check for <code class="code">string::at</code> separately.
|
||||
</p></div><div class="sect3" title="No std::char_traits<char>::eof"><div class="titlepage"><div><div><h4 class="title"><a id="id590406"></a>No <code class="code">std::char_traits<char>::eof</code></h4></div></div></div><p>
|
||||
</p></div><div class="sect3" title="No std::char_traits<char>::eof"><div class="titlepage"><div><div><h4 class="title"><a id="id613312"></a>No <code class="code">std::char_traits<char>::eof</code></h4></div></div></div><p>
|
||||
Use some kind of autoconf test, plus this:
|
||||
</p><pre class="programlisting">
|
||||
#ifdef HAVE_CHAR_TRAITS
|
||||
|
|
@ -188,7 +188,7 @@ AC_DEFINE(HAVE_CONTAINER_AT)],
|
|||
#else
|
||||
#define CPP_EOF EOF
|
||||
#endif
|
||||
</pre></div><div class="sect3" title="No string::clear"><div class="titlepage"><div><div><h4 class="title"><a id="id590424"></a>No <code class="code">string::clear</code></h4></div></div></div><p>
|
||||
</pre></div><div class="sect3" title="No string::clear"><div class="titlepage"><div><div><h4 class="title"><a id="id613330"></a>No <code class="code">string::clear</code></h4></div></div></div><p>
|
||||
There are two functions for deleting the contents of a string:
|
||||
<code class="code">clear</code> and <code class="code">erase</code> (the latter returns the
|
||||
string).
|
||||
|
|
@ -206,12 +206,12 @@ erase(size_type __pos = 0, size_type __n = npos)
|
|||
Unfortunately, <code class="code">clear</code> is not implemented in this
|
||||
version, so you should use <code class="code">erase</code> (which is probably
|
||||
faster than <code class="code">operator=(charT*)</code>).
|
||||
</p></div><div class="sect3" title="Removal of ostream::form and istream::scan extensions"><div class="titlepage"><div><div><h4 class="title"><a id="id590469"></a>
|
||||
</p></div><div class="sect3" title="Removal of ostream::form and istream::scan extensions"><div class="titlepage"><div><div><h4 class="title"><a id="id681234"></a>
|
||||
Removal of <code class="code">ostream::form</code> and <code class="code">istream::scan</code>
|
||||
extensions
|
||||
</h4></div></div></div><p>
|
||||
These are no longer supported. Please use stringstreams instead.
|
||||
</p></div><div class="sect3" title="No basic_stringbuf, basic_stringstream"><div class="titlepage"><div><div><h4 class="title"><a id="id590488"></a>No <code class="code">basic_stringbuf</code>, <code class="code">basic_stringstream</code></h4></div></div></div><p>
|
||||
</p></div><div class="sect3" title="No basic_stringbuf, basic_stringstream"><div class="titlepage"><div><div><h4 class="title"><a id="id681253"></a>No <code class="code">basic_stringbuf</code>, <code class="code">basic_stringstream</code></h4></div></div></div><p>
|
||||
Although the ISO standard <code class="code">i/ostringstream</code>-classes are
|
||||
provided, (<code class="filename">sstream</code>), for
|
||||
compatibility with older implementations the pre-ISO
|
||||
|
|
@ -299,14 +299,14 @@ any = temp;
|
|||
Another example of using stringstreams is in <a class="link" href="strings.html#strings.string.shrink" title="Shrink to Fit">this howto</a>.
|
||||
</p><p> There is additional information in the libstdc++-v2 info files, in
|
||||
particular <span class="quote">“<span class="quote">info iostream</span>”</span>.
|
||||
</p></div><div class="sect3" title="Little or no wide character support"><div class="titlepage"><div><div><h4 class="title"><a id="id590639"></a>Little or no wide character support</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" title="Little or no wide character support"><div class="titlepage"><div><div><h4 class="title"><a id="id681404"></a>Little or no wide character support</h4></div></div></div><p>
|
||||
Classes <code class="classname">wstring</code> and
|
||||
<code class="classname">char_traits<wchar_t></code> are
|
||||
not supported.
|
||||
</p></div><div class="sect3" title="No templatized iostreams"><div class="titlepage"><div><div><h4 class="title"><a id="id590658"></a>No templatized iostreams</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" title="No templatized iostreams"><div class="titlepage"><div><div><h4 class="title"><a id="id681423"></a>No templatized iostreams</h4></div></div></div><p>
|
||||
Classes <code class="classname">wfilebuf</code> and
|
||||
<code class="classname">wstringstream</code> are not supported.
|
||||
</p></div><div class="sect3" title="Thread safety issues"><div class="titlepage"><div><div><h4 class="title"><a id="id653932"></a>Thread safety issues</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" title="Thread safety issues"><div class="titlepage"><div><div><h4 class="title"><a id="id681442"></a>Thread safety issues</h4></div></div></div><p>
|
||||
Earlier GCC releases had a somewhat different approach to
|
||||
threading configuration and proper compilation. Before GCC 3.0,
|
||||
configuration of the threading model was dictated by compiler
|
||||
|
|
@ -364,7 +364,7 @@ libstdc++-v3.
|
|||
of the SGI STL (version 3.3), with extensive changes.
|
||||
</p><p>A more formal description of the V3 goals can be found in the
|
||||
official <a class="link" href="source_design_notes.html" title="Design Notes">design document</a>.
|
||||
</p><p>Portability notes and known implementation limitations are as follows.</p><div class="sect3" title="Pre-ISO headers moved to backwards or removed"><div class="titlepage"><div><div><h4 class="title"><a id="id654048"></a>Pre-ISO headers moved to backwards or removed</h4></div></div></div><p> The pre-ISO C++ headers
|
||||
</p><p>Portability notes and known implementation limitations are as follows.</p><div class="sect3" title="Pre-ISO headers moved to backwards or removed"><div class="titlepage"><div><div><h4 class="title"><a id="id681558"></a>Pre-ISO headers moved to backwards or removed</h4></div></div></div><p> The pre-ISO C++ headers
|
||||
(<code class="code">iostream.h</code>, <code class="code">defalloc.h</code> etc.) are
|
||||
available, unlike previous libstdc++ versions, but inclusion
|
||||
generates a warning that you are using deprecated headers.
|
||||
|
|
@ -436,7 +436,7 @@ like <code class="filename">vector.h</code> can be replaced with <code class="fi
|
|||
directive <code class="code">using namespace std;</code> can be put at the global
|
||||
scope. This should be enough to get this code compiling, assuming the
|
||||
other usage is correct.
|
||||
</p></div><div class="sect3" title="Extension headers hash_map, hash_set moved to ext or backwards"><div class="titlepage"><div><div><h4 class="title"><a id="id654131"></a>Extension headers hash_map, hash_set moved to ext or backwards</h4></div></div></div><p>At this time most of the features of the SGI STL extension have been
|
||||
</p></div><div class="sect3" title="Extension headers hash_map, hash_set moved to ext or backwards"><div class="titlepage"><div><div><h4 class="title"><a id="id611837"></a>Extension headers hash_map, hash_set moved to ext or backwards</h4></div></div></div><p>At this time most of the features of the SGI STL extension have been
|
||||
replaced by standardized libraries.
|
||||
In particular, the unordered_map and unordered_set containers of TR1
|
||||
are suitable replacement for the non-standard hash_map and hash_set
|
||||
|
|
@ -508,7 +508,7 @@ AC_DEFUN([AC_HEADER_EXT_HASH_SET], [
|
|||
AC_DEFINE(HAVE_EXT_HASH_SET,,[Define if ext/hash_set is present. ])
|
||||
fi
|
||||
])
|
||||
</pre></div><div class="sect3" title="No ios::nocreate/ios::noreplace."><div class="titlepage"><div><div><h4 class="title"><a id="id654232"></a>No <code class="code">ios::nocreate/ios::noreplace</code>.
|
||||
</pre></div><div class="sect3" title="No ios::nocreate/ios::noreplace."><div class="titlepage"><div><div><h4 class="title"><a id="id611939"></a>No <code class="code">ios::nocreate/ios::noreplace</code>.
|
||||
</h4></div></div></div><p> The existence of <code class="code">ios::nocreate</code> being used for
|
||||
input-streams has been confirmed, most probably because the author
|
||||
thought it would be more correct to specify nocreate explicitly. So
|
||||
|
|
@ -519,7 +519,7 @@ open the file for reading, check if it has been opened, and then
|
|||
decide whether you want to create/replace or not. To my knowledge,
|
||||
even older implementations support <code class="code">app</code>, <code class="code">ate</code>
|
||||
and <code class="code">trunc</code> (except for <code class="code">app</code> ?).
|
||||
</p></div><div class="sect3" title="No stream::attach(int fd)"><div class="titlepage"><div><div><h4 class="title"><a id="id536658"></a>
|
||||
</p></div><div class="sect3" title="No stream::attach(int fd)"><div class="titlepage"><div><div><h4 class="title"><a id="id611986"></a>
|
||||
No <code class="code">stream::attach(int fd)</code>
|
||||
</h4></div></div></div><p>
|
||||
Phil Edwards writes: It was considered and rejected for the ISO
|
||||
|
|
@ -542,7 +542,7 @@ No <code class="code">stream::attach(int fd)</code>
|
|||
For another example of this, refer to
|
||||
<a class="ulink" href="http://www.josuttis.com/cppcode/fdstream.html" target="_top">fdstream example</a>
|
||||
by Nicolai Josuttis.
|
||||
</p></div><div class="sect3" title="Support for C++98 dialect."><div class="titlepage"><div><div><h4 class="title"><a id="id536722"></a>
|
||||
</p></div><div class="sect3" title="Support for C++98 dialect."><div class="titlepage"><div><div><h4 class="title"><a id="id612050"></a>
|
||||
Support for C++98 dialect.
|
||||
</h4></div></div></div><p>Check for complete library coverage of the C++1998/2003 standard.
|
||||
</p><pre class="programlisting">
|
||||
|
|
@ -610,7 +610,7 @@ AC_DEFUN([AC_HEADER_STDCXX_98], [
|
|||
AC_DEFINE(STDCXX_98_HEADERS,,[Define if ISO C++ 1998 header files are present. ])
|
||||
fi
|
||||
])
|
||||
</pre></div><div class="sect3" title="Support for C++TR1 dialect."><div class="titlepage"><div><div><h4 class="title"><a id="id536749"></a>
|
||||
</pre></div><div class="sect3" title="Support for C++TR1 dialect."><div class="titlepage"><div><div><h4 class="title"><a id="id612078"></a>
|
||||
Support for C++TR1 dialect.
|
||||
</h4></div></div></div><p>Check for library coverage of the TR1 standard.
|
||||
</p><pre class="programlisting">
|
||||
|
|
@ -687,7 +687,7 @@ AC_DEFUN([AC_HEADER_TR1_UNORDERED_SET], [
|
|||
AC_DEFINE(HAVE_TR1_UNORDERED_SET,,[Define if tr1/unordered_set is present. ])
|
||||
fi
|
||||
])
|
||||
</pre></div><div class="sect3" title="Support for C++0x dialect."><div class="titlepage"><div><div><h4 class="title"><a id="id536793"></a>
|
||||
</pre></div><div class="sect3" title="Support for C++0x dialect."><div class="titlepage"><div><div><h4 class="title"><a id="id612122"></a>
|
||||
Support for C++0x dialect.
|
||||
</h4></div></div></div><p>Check for baseline language coverage in the compiler for the C++0xstandard.
|
||||
</p><pre class="programlisting">
|
||||
|
|
@ -899,25 +899,25 @@ AC_DEFUN([AC_HEADER_UNORDERED_SET], [
|
|||
AC_DEFINE(HAVE_UNORDERED_SET,,[Define if unordered_set is present. ])
|
||||
fi
|
||||
])
|
||||
</pre></div><div class="sect3" title="Container::iterator_type is not necessarily Container::value_type*"><div class="titlepage"><div><div><h4 class="title"><a id="id536870"></a>
|
||||
</pre></div><div class="sect3" title="Container::iterator_type is not necessarily Container::value_type*"><div class="titlepage"><div><div><h4 class="title"><a id="id612199"></a>
|
||||
Container::iterator_type is not necessarily Container::value_type*
|
||||
</h4></div></div></div><p>
|
||||
This is a change in behavior from the previous version. Now, most
|
||||
<span class="type">iterator_type</span> typedefs in container classes are POD
|
||||
objects, not <span class="type">value_type</span> pointers.
|
||||
</p></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="backwards.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id536900"></a><p><span class="biblioid">
|
||||
</p></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="backwards.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id553781"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.kegel.com/gcc/gcc4.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Migrating to GCC 4.1
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Dan</span> <span class="surname">Kegel</span>. </span></p></div><div class="biblioentry"><a id="id536931"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Dan</span> <span class="surname">Kegel</span>. </span></p></div><div class="biblioentry"><a id="id553812"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://lists.debian.org/debian-gcc/2006/03/msg00405.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Building the Whole Debian Archive with GCC 4.1: A Summary
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Martin</span> <span class="surname">Michlmayr</span>. </span></p></div><div class="biblioentry"><a id="id536962"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Martin</span> <span class="surname">Michlmayr</span>. </span></p></div><div class="biblioentry"><a id="id553843"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://annwm.lbl.gov/~leggett/Atlas/gcc-3.2.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Migration guide for GCC-3.2
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ else return false.</p></li></ol></div><p>
|
|||
</p><p>
|
||||
Consider a block of size 64 ints. In memory, it would look like this:
|
||||
(assume a 32-bit system where, size_t is a 32-bit entity).
|
||||
</p><div class="table"><a id="id572573"></a><p class="title"><b>Table 20.1. Bitmap Allocator Memory Map</b></p><div class="table-contents"><table summary="Bitmap Allocator Memory Map" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><tbody><tr><td align="left">268</td><td align="left">0</td><td align="left">4294967295</td><td align="left">4294967295</td><td align="left">Data -> Space for 64 ints</td></tr></tbody></table></div></div><br class="table-break" /><p>
|
||||
</p><div class="table"><a id="id596113"></a><p class="title"><b>Table 20.1. Bitmap Allocator Memory Map</b></p><div class="table-contents"><table summary="Bitmap Allocator Memory Map" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><tbody><tr><td align="left">268</td><td align="left">0</td><td align="left">4294967295</td><td align="left">4294967295</td><td align="left">Data -> Space for 64 ints</td></tr></tbody></table></div></div><br class="table-break" /><p>
|
||||
The first Column(268) represents the size of the Block in bytes as
|
||||
seen by the Bitmap Allocator. Internally, a global free list is
|
||||
used to keep track of the free blocks used and given back by the
|
||||
|
|
|
|||
|
|
@ -19,6 +19,6 @@
|
|||
mode or with debug mode. The
|
||||
following table provides the names and headers of the debugging
|
||||
containers:
|
||||
</p><div class="table"><a id="id641002"></a><p class="title"><b>Table 17.1. Debugging Containers</b></p><div class="table-contents"><table summary="Debugging Containers" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Container</th><th align="left">Header</th><th align="left">Debug container</th><th align="left">Debug header</th></tr></thead><tbody><tr><td align="left"><code class="classname">std::bitset</code></td><td align="left"><code class="filename">bitset</code></td><td align="left"><code class="classname">__gnu_debug::bitset</code></td><td align="left"><code class="filename"><debug/bitset></code></td></tr><tr><td align="left"><code class="classname">std::deque</code></td><td align="left"><code class="filename">deque</code></td><td align="left"><code class="classname">__gnu_debug::deque</code></td><td align="left"><code class="filename"><debug/deque></code></td></tr><tr><td align="left"><code class="classname">std::list</code></td><td align="left"><code class="filename">list</code></td><td align="left"><code class="classname">__gnu_debug::list</code></td><td align="left"><code class="filename"><debug/list></code></td></tr><tr><td align="left"><code class="classname">std::map</code></td><td align="left"><code class="filename">map</code></td><td align="left"><code class="classname">__gnu_debug::map</code></td><td align="left"><code class="filename"><debug/map></code></td></tr><tr><td align="left"><code class="classname">std::multimap</code></td><td align="left"><code class="filename">map</code></td><td align="left"><code class="classname">__gnu_debug::multimap</code></td><td align="left"><code class="filename"><debug/map></code></td></tr><tr><td align="left"><code class="classname">std::multiset</code></td><td align="left"><code class="filename">set</code></td><td align="left"><code class="classname">__gnu_debug::multiset</code></td><td align="left"><code class="filename"><debug/set></code></td></tr><tr><td align="left"><code class="classname">std::set</code></td><td align="left"><code class="filename">set</code></td><td align="left"><code class="classname">__gnu_debug::set</code></td><td align="left"><code class="filename"><debug/set></code></td></tr><tr><td align="left"><code class="classname">std::string</code></td><td align="left"><code class="filename">string</code></td><td align="left"><code class="classname">__gnu_debug::string</code></td><td align="left"><code class="filename"><debug/string></code></td></tr><tr><td align="left"><code class="classname">std::wstring</code></td><td align="left"><code class="filename">string</code></td><td align="left"><code class="classname">__gnu_debug::wstring</code></td><td align="left"><code class="filename"><debug/string></code></td></tr><tr><td align="left"><code class="classname">std::basic_string</code></td><td align="left"><code class="filename">string</code></td><td align="left"><code class="classname">__gnu_debug::basic_string</code></td><td align="left"><code class="filename"><debug/string></code></td></tr><tr><td align="left"><code class="classname">std::vector</code></td><td align="left"><code class="filename">vector</code></td><td align="left"><code class="classname">__gnu_debug::vector</code></td><td align="left"><code class="filename"><debug/vector></code></td></tr></tbody></table></div></div><br class="table-break" /><p>In addition, when compiling in C++0x mode, these additional
|
||||
</p><div class="table"><a id="id567337"></a><p class="title"><b>Table 17.1. Debugging Containers</b></p><div class="table-contents"><table summary="Debugging Containers" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Container</th><th align="left">Header</th><th align="left">Debug container</th><th align="left">Debug header</th></tr></thead><tbody><tr><td align="left"><code class="classname">std::bitset</code></td><td align="left"><code class="filename">bitset</code></td><td align="left"><code class="classname">__gnu_debug::bitset</code></td><td align="left"><code class="filename"><debug/bitset></code></td></tr><tr><td align="left"><code class="classname">std::deque</code></td><td align="left"><code class="filename">deque</code></td><td align="left"><code class="classname">__gnu_debug::deque</code></td><td align="left"><code class="filename"><debug/deque></code></td></tr><tr><td align="left"><code class="classname">std::list</code></td><td align="left"><code class="filename">list</code></td><td align="left"><code class="classname">__gnu_debug::list</code></td><td align="left"><code class="filename"><debug/list></code></td></tr><tr><td align="left"><code class="classname">std::map</code></td><td align="left"><code class="filename">map</code></td><td align="left"><code class="classname">__gnu_debug::map</code></td><td align="left"><code class="filename"><debug/map></code></td></tr><tr><td align="left"><code class="classname">std::multimap</code></td><td align="left"><code class="filename">map</code></td><td align="left"><code class="classname">__gnu_debug::multimap</code></td><td align="left"><code class="filename"><debug/map></code></td></tr><tr><td align="left"><code class="classname">std::multiset</code></td><td align="left"><code class="filename">set</code></td><td align="left"><code class="classname">__gnu_debug::multiset</code></td><td align="left"><code class="filename"><debug/set></code></td></tr><tr><td align="left"><code class="classname">std::set</code></td><td align="left"><code class="filename">set</code></td><td align="left"><code class="classname">__gnu_debug::set</code></td><td align="left"><code class="filename"><debug/set></code></td></tr><tr><td align="left"><code class="classname">std::string</code></td><td align="left"><code class="filename">string</code></td><td align="left"><code class="classname">__gnu_debug::string</code></td><td align="left"><code class="filename"><debug/string></code></td></tr><tr><td align="left"><code class="classname">std::wstring</code></td><td align="left"><code class="filename">string</code></td><td align="left"><code class="classname">__gnu_debug::wstring</code></td><td align="left"><code class="filename"><debug/string></code></td></tr><tr><td align="left"><code class="classname">std::basic_string</code></td><td align="left"><code class="filename">string</code></td><td align="left"><code class="classname">__gnu_debug::basic_string</code></td><td align="left"><code class="filename"><debug/string></code></td></tr><tr><td align="left"><code class="classname">std::vector</code></td><td align="left"><code class="filename">vector</code></td><td align="left"><code class="classname">__gnu_debug::vector</code></td><td align="left"><code class="filename"><debug/vector></code></td></tr></tbody></table></div></div><br class="table-break" /><p>In addition, when compiling in C++0x mode, these additional
|
||||
containers have additional debug capability.
|
||||
</p><div class="table"><a id="id573570"></a><p class="title"><b>Table 17.2. Debugging Containers C++0x</b></p><div class="table-contents"><table summary="Debugging Containers C++0x" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Container</th><th align="left">Header</th><th align="left">Debug container</th><th align="left">Debug header</th></tr></thead><tbody><tr><td align="left"><code class="classname">std::unordered_map</code></td><td align="left"><code class="filename">unordered_map</code></td><td align="left"><code class="classname">__gnu_debug::unordered_map</code></td><td align="left"><code class="filename"><debug/unordered_map></code></td></tr><tr><td align="left"><code class="classname">std::unordered_multimap</code></td><td align="left"><code class="filename">unordered_map</code></td><td align="left"><code class="classname">__gnu_debug::unordered_multimap</code></td><td align="left"><code class="filename"><debug/unordered_map></code></td></tr><tr><td align="left"><code class="classname">std::unordered_set</code></td><td align="left"><code class="filename">unordered_set</code></td><td align="left"><code class="classname">__gnu_debug::unordered_set</code></td><td align="left"><code class="filename"><debug/unordered_set></code></td></tr><tr><td align="left"><code class="classname">std::unordered_multiset</code></td><td align="left"><code class="filename">unordered_set</code></td><td align="left"><code class="classname">__gnu_debug::unordered_multiset</code></td><td align="left"><code class="filename"><debug/unordered_set></code></td></tr></tbody></table></div></div><br class="table-break" /></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bk01pt03ch17s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="debug_mode.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="bk01pt03ch17s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Semantics </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Design</td></tr></table></div></body></html>
|
||||
</p><div class="table"><a id="id680816"></a><p class="title"><b>Table 17.2. Debugging Containers C++0x</b></p><div class="table-contents"><table summary="Debugging Containers C++0x" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Container</th><th align="left">Header</th><th align="left">Debug container</th><th align="left">Debug header</th></tr></thead><tbody><tr><td align="left"><code class="classname">std::unordered_map</code></td><td align="left"><code class="filename">unordered_map</code></td><td align="left"><code class="classname">__gnu_debug::unordered_map</code></td><td align="left"><code class="filename"><debug/unordered_map></code></td></tr><tr><td align="left"><code class="classname">std::unordered_multimap</code></td><td align="left"><code class="filename">unordered_map</code></td><td align="left"><code class="classname">__gnu_debug::unordered_multimap</code></td><td align="left"><code class="filename"><debug/unordered_map></code></td></tr><tr><td align="left"><code class="classname">std::unordered_set</code></td><td align="left"><code class="filename">unordered_set</code></td><td align="left"><code class="classname">__gnu_debug::unordered_set</code></td><td align="left"><code class="filename"><debug/unordered_set></code></td></tr><tr><td align="left"><code class="classname">std::unordered_multiset</code></td><td align="left"><code class="filename">unordered_set</code></td><td align="left"><code class="classname">__gnu_debug::unordered_multiset</code></td><td align="left"><code class="filename"><debug/unordered_set></code></td></tr></tbody></table></div></div><br class="table-break" /></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bk01pt03ch17s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="debug_mode.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="bk01pt03ch17s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Semantics </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Design</td></tr></table></div></body></html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><meta name="keywords" content=" C++ , library , profile " /><meta name="keywords" content=" ISO C++ , library " /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="profile_mode.html" title="Chapter 19. Profile Mode" /><link rel="prev" href="profile_mode.html" title="Chapter 19. Profile Mode" /><link rel="next" href="bk01pt03ch19s03.html" title="Extensions for Custom Containers" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Design</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="profile_mode.html">Prev</a> </td><th width="60%" align="center">Chapter 19. Profile Mode</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt03ch19s03.html">Next</a></td></tr></table><hr /></div><div class="sect1" title="Design"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="manual.ext.profile_mode.design"></a>Design</h2></div></div></div><p>
|
||||
</p><div class="table"><a id="id584531"></a><p class="title"><b>Table 19.1. Profile Code Location</b></p><div class="table-contents"><table summary="Profile Code Location" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Code Location</th><th align="left">Use</th></tr></thead><tbody><tr><td align="left"><code class="code">libstdc++-v3/include/std/*</code></td><td align="left">Preprocessor code to redirect to profile extension headers.</td></tr><tr><td align="left"><code class="code">libstdc++-v3/include/profile/*</code></td><td align="left">Profile extension public headers (map, vector, ...).</td></tr><tr><td align="left"><code class="code">libstdc++-v3/include/profile/impl/*</code></td><td align="left">Profile extension internals. Implementation files are
|
||||
</p><div class="table"><a id="id578264"></a><p class="title"><b>Table 19.1. Profile Code Location</b></p><div class="table-contents"><table summary="Profile Code Location" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Code Location</th><th align="left">Use</th></tr></thead><tbody><tr><td align="left"><code class="code">libstdc++-v3/include/std/*</code></td><td align="left">Preprocessor code to redirect to profile extension headers.</td></tr><tr><td align="left"><code class="code">libstdc++-v3/include/profile/*</code></td><td align="left">Profile extension public headers (map, vector, ...).</td></tr><tr><td align="left"><code class="code">libstdc++-v3/include/profile/impl/*</code></td><td align="left">Profile extension internals. Implementation files are
|
||||
only included from <code class="code">impl/profiler.h</code>, which is the only
|
||||
file included from the public headers.</td></tr></tbody></table></div></div><br class="table-break" /><p>
|
||||
</p><div class="sect2" title="Wrapper Model"><div class="titlepage"><div><div><h3 class="title"><a id="manual.ext.profile_mode.design.wrapper"></a>Wrapper Model</h3></div></div></div><p>
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
A high accuracy means that the diagnostic is unlikely to be wrong.
|
||||
These grades are not perfect. They are just meant to guide users with
|
||||
specific needs or time budgets.
|
||||
</p><div class="table"><a id="id638005"></a><p class="title"><b>Table 19.2. Profile Diagnostics</b></p><div class="table-contents"><table summary="Profile Diagnostics" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Group</th><th align="left">Flag</th><th align="left">Benefit</th><th align="left">Cost</th><th align="left">Freq.</th><th align="left">Implemented</th><td class="auto-generated"> </td></tr></thead><tbody><tr><td align="left"><a class="ulink" href="#manual.ext.profile_mode.analysis.containers" target="_top">
|
||||
</p><div class="table"><a id="id522678"></a><p class="title"><b>Table 19.2. Profile Diagnostics</b></p><div class="table-contents"><table summary="Profile Diagnostics" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Group</th><th align="left">Flag</th><th align="left">Benefit</th><th align="left">Cost</th><th align="left">Freq.</th><th align="left">Implemented</th><td class="auto-generated"> </td></tr></thead><tbody><tr><td align="left"><a class="ulink" href="#manual.ext.profile_mode.analysis.containers" target="_top">
|
||||
CONTAINERS</a></td><td align="left"><a class="ulink" href="#manual.ext.profile_mode.analysis.hashtable_too_small" target="_top">
|
||||
HASHTABLE_TOO_SMALL</a></td><td align="left">10</td><td align="left">1</td><td align="left"> </td><td align="left">10</td><td align="left">yes</td></tr><tr><td align="left"> </td><td align="left"><a class="ulink" href="#manual.ext.profile_mode.analysis.hashtable_too_large" target="_top">
|
||||
HASHTABLE_TOO_LARGE</a></td><td align="left">5</td><td align="left">1</td><td align="left"> </td><td align="left">10</td><td align="left">yes</td></tr><tr><td align="left"> </td><td align="left"><a class="ulink" href="#manual.ext.profile_mode.analysis.inefficient_hash" target="_top">
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title></title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><meta name="keywords" content=" ISO C++ , library " /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="extensions.html" title="Part III. Extensions" /><link rel="prev" href="extensions.html" title="Part III. Extensions" /><link rel="next" href="ext_compile_checks.html" title="Chapter 16. Compile Time Checks" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="extensions.html">Prev</a> </td><th width="60%" align="center">Part III.
|
||||
Extensions
|
||||
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="ext_compile_checks.html">Next</a></td></tr></table><hr /></div><div class="preface"><div class="titlepage"><div><div><h2 class="title"><a id="id555265"></a></h2></div></div></div><p>
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="ext_compile_checks.html">Next</a></td></tr></table><hr /></div><div class="preface"><div class="titlepage"><div><div><h2 class="title"><a id="id658754"></a></h2></div></div></div><p>
|
||||
Here we will make an attempt at describing the non-Standard extensions to
|
||||
the library. Some of these are from SGI's STL, some of these are GNU's,
|
||||
and some just seemed to appear on the doorstep.
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="extensions.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 15. Concurrency"><div class="titlepage"><div><div><h2 class="title"><a id="std.concurrency"></a>Chapter 15.
|
||||
Concurrency
|
||||
<a id="id658402" class="indexterm"></a>
|
||||
<a id="id596587" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="concurrency.html#std.concurrency.api">API Reference</a></span></dt></dl></div><p>
|
||||
Facilities for concurrent operation, and control thereof.
|
||||
</p><div class="sect1" title="API Reference"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.concurrency.api"></a>API Reference</h2></div></div></div><p>
|
||||
|
|
|
|||
|
|
@ -59,8 +59,7 @@
|
|||
</p><p>If not explicitly specified, the configure proccess tries
|
||||
to guess the most suitable package from the choices above. The
|
||||
default is 'generic'. On glibc-based systems of sufficient
|
||||
vintage (2.2.5 and newer) and capability (with installed DE and
|
||||
FR locale data), 'gnu' is automatically selected. This option
|
||||
vintage (2.3 and newer), 'gnu' is automatically selected. This option
|
||||
can change the library ABI.
|
||||
</p></dd><dt><span class="term"><code class="code">--enable-libstdcxx-allocator</code></span></dt><dd><p>This is an abbreviated form of
|
||||
<code class="code">'--enable-libstdcxx-allocator=auto'</code> (described
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="associative.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 9. Containers"><div class="titlepage"><div><div><h2 class="title"><a id="std.containers"></a>Chapter 9.
|
||||
Containers
|
||||
<a id="id549505" class="indexterm"></a>
|
||||
<a id="id597789" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="containers.html#std.containers.sequences">Sequences</a></span></dt><dd><dl><dt><span class="sect2"><a href="containers.html#containers.sequences.list">list</a></span></dt><dt><span class="sect2"><a href="containers.html#containers.sequences.vector">vector</a></span></dt></dl></dd><dt><span class="sect1"><a href="associative.html">Associative</a></span></dt><dd><dl><dt><span class="sect2"><a href="associative.html#containers.associative.insert_hints">Insertion Hints</a></span></dt><dt><span class="sect2"><a href="associative.html#containers.associative.bitset">bitset</a></span></dt></dl></dd><dt><span class="sect1"><a href="containers_and_c.html">Interacting with C</a></span></dt><dd><dl><dt><span class="sect2"><a href="containers_and_c.html#containers.c.vs_array">Containers vs. Arrays</a></span></dt></dl></dd></dl></div><div class="sect1" title="Sequences"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.containers.sequences"></a>Sequences</h2></div></div></div><div class="sect2" title="list"><div class="titlepage"><div><div><h3 class="title"><a id="containers.sequences.list"></a>list</h3></div></div></div><div class="sect3" title="list::size() is O(n)"><div class="titlepage"><div><div><h4 class="title"><a id="sequences.list.size"></a>list::size() is O(n)</h4></div></div></div><p>
|
||||
Yes it is, and that's okay. This is a decision that we preserved
|
||||
when we imported SGI's STL implementation. The following is
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt02ch05s02.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 5. Diagnostics"><div class="titlepage"><div><div><h2 class="title"><a id="std.diagnostics"></a>Chapter 5.
|
||||
Diagnostics
|
||||
<a id="id546534" class="indexterm"></a>
|
||||
<a id="id620304" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="diagnostics.html#std.diagnostics.exceptions">Exceptions</a></span></dt><dd><dl><dt><span class="sect2"><a href="diagnostics.html#std.diagnostics.exceptions.api">API Reference</a></span></dt><dt><span class="sect2"><a href="diagnostics.html#std.diagnostics.exceptions.data">Adding Data to <code class="classname">exception</code></a></span></dt></dl></dd><dt><span class="sect1"><a href="bk01pt02ch05s02.html">Concept Checking</a></span></dt></dl></div><div class="sect1" title="Exceptions"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.diagnostics.exceptions"></a>Exceptions</h2></div></div></div><div class="sect2" title="API Reference"><div class="titlepage"><div><div><h3 class="title"><a id="std.diagnostics.exceptions.api"></a>API Reference</h3></div></div></div><p>
|
||||
All exception objects are defined in one of the standard header
|
||||
files: <code class="filename">exception</code>,
|
||||
|
|
|
|||
|
|
@ -108,7 +108,7 @@
|
|||
writing Doxygen comments. Single and double quotes, and
|
||||
separators in filenames are two common trouble spots. When in
|
||||
doubt, consult the following table.
|
||||
</p><div class="table"><a id="id569176"></a><p class="title"><b>Table A.1. HTML to Doxygen Markup Comparison</b></p><div class="table-contents"><table summary="HTML to Doxygen Markup Comparison" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">HTML</th><th align="left">Doxygen</th></tr></thead><tbody><tr><td align="left">\</td><td align="left">\\</td></tr><tr><td align="left">"</td><td align="left">\"</td></tr><tr><td align="left">'</td><td align="left">\'</td></tr><tr><td align="left"><i></td><td align="left">@a word</td></tr><tr><td align="left"><b></td><td align="left">@b word</td></tr><tr><td align="left"><code></td><td align="left">@c word</td></tr><tr><td align="left"><em></td><td align="left">@a word</td></tr><tr><td align="left"><em></td><td align="left"><em>two words or more</em></td></tr></tbody></table></div></div><br class="table-break" /></div></div><div class="sect2" title="Docbook"><div class="titlepage"><div><div><h3 class="title"><a id="doc_style.docbook"></a>Docbook</h3></div></div></div><div class="sect3" title="Prerequisites"><div class="titlepage"><div><div><h4 class="title"><a id="docbook.prereq"></a>Prerequisites</h4></div></div></div><p>
|
||||
</p><div class="table"><a id="id672808"></a><p class="title"><b>Table A.1. HTML to Doxygen Markup Comparison</b></p><div class="table-contents"><table summary="HTML to Doxygen Markup Comparison" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">HTML</th><th align="left">Doxygen</th></tr></thead><tbody><tr><td align="left">\</td><td align="left">\\</td></tr><tr><td align="left">"</td><td align="left">\"</td></tr><tr><td align="left">'</td><td align="left">\'</td></tr><tr><td align="left"><i></td><td align="left">@a word</td></tr><tr><td align="left"><b></td><td align="left">@b word</td></tr><tr><td align="left"><code></td><td align="left">@c word</td></tr><tr><td align="left"><em></td><td align="left">@a word</td></tr><tr><td align="left"><em></td><td align="left"><em>two words or more</em></td></tr></tbody></table></div></div><br class="table-break" /></div></div><div class="sect2" title="Docbook"><div class="titlepage"><div><div><h3 class="title"><a id="doc_style.docbook"></a>Docbook</h3></div></div></div><div class="sect3" title="Prerequisites"><div class="titlepage"><div><div><h4 class="title"><a id="docbook.prereq"></a>Prerequisites</h4></div></div></div><p>
|
||||
Editing the DocBook sources requires an XML editor. Many
|
||||
exist: some notable options
|
||||
include <span class="command"><strong>emacs</strong></span>, <span class="application">Kate</span>,
|
||||
|
|
@ -238,11 +238,11 @@ xmllint --noout --valid <code class="filename">xml/index.xml</code>
|
|||
<a class="ulink" href="http://www.docbook.org/tdg/en/html/part2.html" target="_top">online</a>.
|
||||
An incomplete reference for HTML to Docbook conversion is
|
||||
detailed in the table below.
|
||||
</p><div class="table"><a id="id662369"></a><p class="title"><b>Table A.2. HTML to Docbook XML Markup Comparison</b></p><div class="table-contents"><table summary="HTML to Docbook XML Markup Comparison" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">HTML</th><th align="left">Docbook</th></tr></thead><tbody><tr><td align="left"><p></td><td align="left"><para></td></tr><tr><td align="left"><pre></td><td align="left"><computeroutput>, <programlisting>,
|
||||
</p><div class="table"><a id="id524034"></a><p class="title"><b>Table A.2. HTML to Docbook XML Markup Comparison</b></p><div class="table-contents"><table summary="HTML to Docbook XML Markup Comparison" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">HTML</th><th align="left">Docbook</th></tr></thead><tbody><tr><td align="left"><p></td><td align="left"><para></td></tr><tr><td align="left"><pre></td><td align="left"><computeroutput>, <programlisting>,
|
||||
<literallayout></td></tr><tr><td align="left"><ul></td><td align="left"><itemizedlist></td></tr><tr><td align="left"><ol></td><td align="left"><orderedlist></td></tr><tr><td align="left"><il></td><td align="left"><listitem></td></tr><tr><td align="left"><dl></td><td align="left"><variablelist></td></tr><tr><td align="left"><dt></td><td align="left"><term></td></tr><tr><td align="left"><dd></td><td align="left"><listitem></td></tr><tr><td align="left"><a href=""></td><td align="left"><ulink url=""></td></tr><tr><td align="left"><code></td><td align="left"><literal>, <programlisting></td></tr><tr><td align="left"><strong></td><td align="left"><emphasis></td></tr><tr><td align="left"><em></td><td align="left"><emphasis></td></tr><tr><td align="left">"</td><td align="left"><quote></td></tr></tbody></table></div></div><br class="table-break" /><p>
|
||||
And examples of detailed markup for which there are no real HTML
|
||||
equivalents are listed in the table below.
|
||||
</p><div class="table"><a id="id640551"></a><p class="title"><b>Table A.3. Docbook XML Element Use</b></p><div class="table-contents"><table summary="Docbook XML Element Use" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Element</th><th align="left">Use</th></tr></thead><tbody><tr><td align="left"><structname></td><td align="left"><structname>char_traits</structname></td></tr><tr><td align="left"><classname></td><td align="left"><classname>string</classname></td></tr><tr><td align="left"><function></td><td align="left">
|
||||
</p><div class="table"><a id="id564132"></a><p class="title"><b>Table A.3. Docbook XML Element Use</b></p><div class="table-contents"><table summary="Docbook XML Element Use" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Element</th><th align="left">Use</th></tr></thead><tbody><tr><td align="left"><structname></td><td align="left"><structname>char_traits</structname></td></tr><tr><td align="left"><classname></td><td align="left"><classname>string</classname></td></tr><tr><td align="left"><function></td><td align="left">
|
||||
<p><function>clear()</function></p>
|
||||
<p><function>fs.clear()</function></p>
|
||||
</td></tr><tr><td align="left"><type></td><td align="left"><type>long long</type></td></tr><tr><td align="left"><varname></td><td align="left"><varname>fs</varname></td></tr><tr><td align="left"><literal></td><td align="left">
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -3,7 +3,7 @@
|
|||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Facets</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><meta name="keywords" content=" ISO C++ , library " /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="localization.html" title="Chapter 8. Localization" /><link rel="prev" href="localization.html" title="Chapter 8. Localization" /><link rel="next" href="containers.html" title="Chapter 9. Containers" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Facets</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="localization.html">Prev</a> </td><th width="60%" align="center">Chapter 8.
|
||||
Localization
|
||||
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="containers.html">Next</a></td></tr></table><hr /></div><div class="section" title="Facets"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.localization.facet"></a>Facets</h2></div></div></div><div class="section" title="ctype"><div class="titlepage"><div><div><h3 class="title"><a id="std.localization.facet.ctype"></a>ctype</h3></div></div></div><div class="section" title="Implementation"><div class="titlepage"><div><div><h4 class="title"><a id="facet.ctype.impl"></a>Implementation</h4></div></div></div><div class="section" title="Specializations"><div class="titlepage"><div><div><h5 class="title"><a id="id551356"></a>Specializations</h5></div></div></div><p>
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="containers.html">Next</a></td></tr></table><hr /></div><div class="section" title="Facets"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.localization.facet"></a>Facets</h2></div></div></div><div class="section" title="ctype"><div class="titlepage"><div><div><h3 class="title"><a id="std.localization.facet.ctype"></a>ctype</h3></div></div></div><div class="section" title="Implementation"><div class="titlepage"><div><div><h4 class="title"><a id="facet.ctype.impl"></a>Implementation</h4></div></div></div><div class="section" title="Specializations"><div class="titlepage"><div><div><h5 class="title"><a id="id622410"></a>Specializations</h5></div></div></div><p>
|
||||
For the required specialization codecvt<wchar_t, char, mbstate_t> ,
|
||||
conversions are made between the internal character set (always UCS4
|
||||
on GNU/Linux) and whatever the currently selected locale for the
|
||||
|
|
@ -50,26 +50,26 @@ characters.
|
|||
</p></li><li class="listitem"><p>
|
||||
Rename abstract base class. See if just smash-overriding is a
|
||||
better approach. Clarify, add sanity to naming.
|
||||
</p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="facet.ctype.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id561523"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="facet.ctype.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id563512"></a><p><span class="title"><i>
|
||||
The GNU C Library
|
||||
</i>. </span><span class="author"><span class="firstname">Roland</span> <span class="surname">McGrath</span>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2007 FSF. </span><span class="pagenums">Chapters 6 Character Set Handling and 7 Locales and Internationalization. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id628801"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="author"><span class="firstname">Roland</span> <span class="surname">McGrath</span>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2007 FSF. </span><span class="pagenums">Chapters 6 Character Set Handling and 7 Locales and Internationalization. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id558277"></a><p><span class="title"><i>
|
||||
Correspondence
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id539764"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id669237"></a><p><span class="title"><i>
|
||||
ISO/IEC 14882:1998 Programming languages - C++
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id539782"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id669256"></a><p><span class="title"><i>
|
||||
ISO/IEC 9899:1999 Programming languages - C
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id539800"></a><p><span class="biblioid">
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id626634"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.unix.org/version3/ieee_std.html" target="_top">
|
||||
<em class="citetitle">
|
||||
The Open Group Base Specifications, Issue 6 (IEEE Std. 1003.1-2004)
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="copyright">Copyright © 1999
|
||||
The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id629862"></a><p><span class="title"><i>
|
||||
The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id626664"></a><p><span class="title"><i>
|
||||
The C++ Programming Language, Special Edition
|
||||
</i>. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span><span class="copyright">Copyright © 2000 Addison Wesley, Inc.. </span><span class="pagenums">Appendix D. </span><span class="publisher"><span class="publishername">
|
||||
Addison Wesley
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id629076"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id676982"></a><p><span class="title"><i>
|
||||
Standard C++ IOStreams and Locales
|
||||
</i>. </span><span class="subtitle">
|
||||
Advanced Programmer's Guide and Reference
|
||||
|
|
@ -412,17 +412,17 @@ codecvt usage.
|
|||
</p></li><li class="listitem"><p>
|
||||
wchar_t/char internal buffers and conversions between
|
||||
internal/external buffers?
|
||||
</p></li></ul></div></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="facet.codecvt.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id554787"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="facet.codecvt.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id624037"></a><p><span class="title"><i>
|
||||
The GNU C Library
|
||||
</i>. </span><span class="author"><span class="firstname">Roland</span> <span class="surname">McGrath</span>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2007 FSF. </span><span class="pagenums">
|
||||
Chapters 6 Character Set Handling and 7 Locales and Internationalization
|
||||
. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id609273"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id555086"></a><p><span class="title"><i>
|
||||
Correspondence
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id609301"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id596020"></a><p><span class="title"><i>
|
||||
ISO/IEC 14882:1998 Programming languages - C++
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id569551"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id596039"></a><p><span class="title"><i>
|
||||
ISO/IEC 9899:1999 Programming languages - C
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id569570"></a><p><span class="biblioid">
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id579887"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opengroup.org/austin" target="_top">
|
||||
<em class="citetitle">
|
||||
System Interface Definitions, Issue 7 (IEEE Std. 1003.1-2008)
|
||||
|
|
@ -431,29 +431,29 @@ codecvt usage.
|
|||
. </span><span class="copyright">Copyright © 2008
|
||||
The Open Group/The Institute of Electrical and Electronics
|
||||
Engineers, Inc.
|
||||
. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id609215"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id590980"></a><p><span class="title"><i>
|
||||
The C++ Programming Language, Special Edition
|
||||
</i>. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span><span class="copyright">Copyright © 2000 Addison Wesley, Inc.. </span><span class="pagenums">Appendix D. </span><span class="publisher"><span class="publishername">
|
||||
Addison Wesley
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id559036"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id591021"></a><p><span class="title"><i>
|
||||
Standard C++ IOStreams and Locales
|
||||
</i>. </span><span class="subtitle">
|
||||
Advanced Programmer's Guide and Reference
|
||||
. </span><span class="author"><span class="firstname">Angelika</span> <span class="surname">Langer</span>. </span><span class="author"><span class="firstname">Klaus</span> <span class="surname">Kreft</span>. </span><span class="copyright">Copyright © 2000 Addison Wesley Longman, Inc.. </span><span class="publisher"><span class="publishername">
|
||||
Addison Wesley Longman
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id528037"></a><p><span class="biblioid">
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id585101"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.lysator.liu.se/c/na1.html" target="_top">
|
||||
<em class="citetitle">
|
||||
A brief description of Normative Addendum 1
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Clive</span> <span class="surname">Feather</span>. </span><span class="pagenums">Extended Character Sets. </span></p></div><div class="biblioentry"><a id="id543193"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Clive</span> <span class="surname">Feather</span>. </span><span class="pagenums">Extended Character Sets. </span></p></div><div class="biblioentry"><a id="id619768"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://tldp.org/HOWTO/Unicode-HOWTO.html" target="_top">
|
||||
<em class="citetitle">
|
||||
The Unicode HOWTO
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Bruno</span> <span class="surname">Haible</span>. </span></p></div><div class="biblioentry"><a id="id543223"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Bruno</span> <span class="surname">Haible</span>. </span></p></div><div class="biblioentry"><a id="id619798"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.cl.cam.ac.uk/~mgk25/unicode.html" target="_top">
|
||||
<em class="citetitle">
|
||||
UTF-8 and Unicode FAQ for Unix/Linux
|
||||
|
|
@ -700,16 +700,16 @@ void test01()
|
|||
model. As of this writing, it is unknown how to query to see
|
||||
if a specified message catalog exists using the gettext
|
||||
package.
|
||||
</p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="facet.messages.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id558607"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="facet.messages.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id560812"></a><p><span class="title"><i>
|
||||
The GNU C Library
|
||||
</i>. </span><span class="author"><span class="firstname">Roland</span> <span class="surname">McGrath</span>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2007 FSF. </span><span class="pagenums">Chapters 6 Character Set Handling, and 7 Locales and Internationalization
|
||||
. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id539940"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id606593"></a><p><span class="title"><i>
|
||||
Correspondence
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id592904"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id649548"></a><p><span class="title"><i>
|
||||
ISO/IEC 14882:1998 Programming languages - C++
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id592922"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id649566"></a><p><span class="title"><i>
|
||||
ISO/IEC 9899:1999 Programming languages - C
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id592941"></a><p><span class="biblioid">
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id596920"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opengroup.org/austin" target="_top">
|
||||
<em class="citetitle">
|
||||
System Interface Definitions, Issue 7 (IEEE Std. 1003.1-2008)
|
||||
|
|
@ -718,17 +718,17 @@ void test01()
|
|||
. </span><span class="copyright">Copyright © 2008
|
||||
The Open Group/The Institute of Electrical and Electronics
|
||||
Engineers, Inc.
|
||||
. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id592852"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id596950"></a><p><span class="title"><i>
|
||||
The C++ Programming Language, Special Edition
|
||||
</i>. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span><span class="copyright">Copyright © 2000 Addison Wesley, Inc.. </span><span class="pagenums">Appendix D. </span><span class="publisher"><span class="publishername">
|
||||
Addison Wesley
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id656367"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id560330"></a><p><span class="title"><i>
|
||||
Standard C++ IOStreams and Locales
|
||||
</i>. </span><span class="subtitle">
|
||||
Advanced Programmer's Guide and Reference
|
||||
. </span><span class="author"><span class="firstname">Angelika</span> <span class="surname">Langer</span>. </span><span class="author"><span class="firstname">Klaus</span> <span class="surname">Kreft</span>. </span><span class="copyright">Copyright © 2000 Addison Wesley Longman, Inc.. </span><span class="publisher"><span class="publishername">
|
||||
Addison Wesley Longman
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id621852"></a><p><span class="biblioid">
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id554791"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://java.sun.com/reference/api/index.html" target="_top">
|
||||
<em class="citetitle">
|
||||
API Specifications, Java Platform
|
||||
|
|
@ -736,7 +736,7 @@ void test01()
|
|||
</a>
|
||||
. </span><span class="pagenums">java.util.Properties, java.text.MessageFormat,
|
||||
java.util.Locale, java.util.ResourceBundle
|
||||
. </span></p></div><div class="biblioentry"><a id="id552972"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id615580"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.gnu.org/software/gettext/" target="_top">
|
||||
<em class="citetitle">
|
||||
GNU gettext tools, version 0.10.38, Native Language Support
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="streambufs.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 13. Input and Output"><div class="titlepage"><div><div><h2 class="title"><a id="std.io"></a>Chapter 13.
|
||||
Input and Output
|
||||
<a id="id552516" class="indexterm"></a>
|
||||
<a id="id581706" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="io.html#std.io.objects">Iostream Objects</a></span></dt><dt><span class="sect1"><a href="streambufs.html">Stream Buffers</a></span></dt><dd><dl><dt><span class="sect2"><a href="streambufs.html#io.streambuf.derived">Derived streambuf Classes</a></span></dt><dt><span class="sect2"><a href="streambufs.html#io.streambuf.buffering">Buffering</a></span></dt></dl></dd><dt><span class="sect1"><a href="stringstreams.html">Memory Based Streams</a></span></dt><dd><dl><dt><span class="sect2"><a href="stringstreams.html#std.io.memstreams.compat">Compatibility With strstream</a></span></dt></dl></dd><dt><span class="sect1"><a href="fstreams.html">File Based Streams</a></span></dt><dd><dl><dt><span class="sect2"><a href="fstreams.html#std.io.filestreams.copying_a_file">Copying a File</a></span></dt><dt><span class="sect2"><a href="fstreams.html#std.io.filestreams.binary">Binary Input and Output</a></span></dt></dl></dd><dt><span class="sect1"><a href="io_and_c.html">Interacting with C</a></span></dt><dd><dl><dt><span class="sect2"><a href="io_and_c.html#std.io.c.FILE">Using FILE* and file descriptors</a></span></dt><dt><span class="sect2"><a href="io_and_c.html#std.io.c.sync">Performance</a></span></dt></dl></dd></dl></div><div class="sect1" title="Iostream Objects"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.io.objects"></a>Iostream Objects</h2></div></div></div><p>To minimize the time you have to wait on the compiler, it's good to
|
||||
only include the headers you really need. Many people simply include
|
||||
<iostream> when they don't need to -- and that can <span class="emphasis"><em>penalize
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="algorithms.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 10. Iterators"><div class="titlepage"><div><div><h2 class="title"><a id="std.iterators"></a>Chapter 10.
|
||||
Iterators
|
||||
<a id="id640879" class="indexterm"></a>
|
||||
<a id="id594620" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="iterators.html#std.iterators.predefined">Predefined</a></span></dt><dd><dl><dt><span class="sect2"><a href="iterators.html#iterators.predefined.vs_pointers">Iterators vs. Pointers</a></span></dt><dt><span class="sect2"><a href="iterators.html#iterators.predefined.end">One Past the End</a></span></dt></dl></dd></dl></div><div class="sect1" title="Predefined"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.iterators.predefined"></a>Predefined</h2></div></div></div><div class="sect2" title="Iterators vs. Pointers"><div class="titlepage"><div><div><h3 class="title"><a id="iterators.predefined.vs_pointers"></a>Iterators vs. Pointers</h3></div></div></div><p>
|
||||
The following
|
||||
FAQ <a class="link" href="../faq.html#faq.iterator_as_pod" title="7.1.">entry</a> points out that
|
||||
|
|
|
|||
|
|
@ -92,7 +92,7 @@ requirements of the license of GCC.<br />
|
|||
the web, excluding the pages generated from source comments, are
|
||||
copyrighted by the Free Software Foundation, and placed under the
|
||||
<a class="link" href="appendix_gfdl.html" title="Appendix E. GNU Free Documentation License"> GNU Free Documentation
|
||||
License version 1.2</a>. There are no Front-Cover Texts, no
|
||||
License version 1.3</a>. There are no Front-Cover Texts, no
|
||||
Back-Cover Texts, and no Invariant Sections.
|
||||
</p><p>
|
||||
For documentation generated by doxygen or other automated tools
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="facets.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 8. Localization"><div class="titlepage"><div><div><h2 class="title"><a id="std.localization"></a>Chapter 8.
|
||||
Localization
|
||||
<a id="id550585" class="indexterm"></a>
|
||||
<a id="id579446" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="localization.html#std.localization.locales">Locales</a></span></dt><dd><dl><dt><span class="section"><a href="localization.html#std.localization.locales.locale">locale</a></span></dt></dl></dd><dt><span class="section"><a href="facets.html">Facets</a></span></dt><dd><dl><dt><span class="section"><a href="facets.html#std.localization.facet.ctype">ctype</a></span></dt><dt><span class="section"><a href="facets.html#std.localization.facet.codecvt">codecvt</a></span></dt><dt><span class="section"><a href="facets.html#manual.localization.facet.messages">messages</a></span></dt></dl></dd></dl></div><div class="section" title="Locales"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.localization.locales"></a>Locales</h2></div></div></div><div class="section" title="locale"><div class="titlepage"><div><div><h3 class="title"><a id="std.localization.locales.locale"></a>locale</h3></div></div></div><p>
|
||||
Describes the basic locale object, including nested
|
||||
classes id, facet, and the reference-counted implementation object,
|
||||
|
|
@ -403,18 +403,18 @@ global locale" (emphasis Paolo), that is:
|
|||
What should non-required facet instantiations do? If the
|
||||
generic implementation is provided, then how to end-users
|
||||
provide specializations?
|
||||
</p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="locales.locale.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id594448"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="locales.locale.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="The GNU C Library"><a id="id561412"></a><p><span class="title"><i>
|
||||
The GNU C Library
|
||||
</i>. </span><span class="author"><span class="firstname">Roland</span> <span class="surname">McGrath</span>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2007 FSF. </span><span class="pagenums">
|
||||
Chapters 6 Character Set Handling and 7 Locales and
|
||||
Internationalization
|
||||
. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id660743"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry" title="Correspondence"><a id="id597981"></a><p><span class="title"><i>
|
||||
Correspondence
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id619270"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="copyright">Copyright © 2002 . </span></p></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id585567"></a><p><span class="title"><i>
|
||||
ISO/IEC 14882:1998 Programming languages - C++
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id619288"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry" title="ISO/IEC 9899:1999 Programming languages - C"><a id="id585586"></a><p><span class="title"><i>
|
||||
ISO/IEC 9899:1999 Programming languages - C
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id657601"></a><p><span class="biblioid">
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id653747"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opengroup.org/austin" target="_top">
|
||||
<em class="citetitle">
|
||||
System Interface Definitions, Issue 7 (IEEE Std. 1003.1-2008)
|
||||
|
|
@ -423,11 +423,11 @@ global locale" (emphasis Paolo), that is:
|
|||
. </span><span class="copyright">Copyright © 2008
|
||||
The Open Group/The Institute of Electrical and Electronics
|
||||
Engineers, Inc.
|
||||
. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id553265"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry" title="The C++ Programming Language, Special Edition"><a id="id579478"></a><p><span class="title"><i>
|
||||
The C++ Programming Language, Special Edition
|
||||
</i>. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span><span class="copyright">Copyright © 2000 Addison Wesley, Inc.. </span><span class="pagenums">Appendix D. </span><span class="publisher"><span class="publishername">
|
||||
Addison Wesley
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id584975"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry" title="Standard C++ IOStreams and Locales"><a id="id563076"></a><p><span class="title"><i>
|
||||
Standard C++ IOStreams and Locales
|
||||
</i>. </span><span class="subtitle">
|
||||
Advanced Programmer's Guide and Reference
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@
|
|||
or loading and unloading shared objects in memory. As such, using
|
||||
caching allocators on systems that do not support
|
||||
<code class="function">abi::__cxa_atexit</code> is not recommended.
|
||||
</p></div><div class="section" title="Implementation"><div class="titlepage"><div><div><h4 class="title"><a id="allocator.impl"></a>Implementation</h4></div></div></div><div class="section" title="Interface Design"><div class="titlepage"><div><div><h5 class="title"><a id="id596578"></a>Interface Design</h5></div></div></div><p>
|
||||
</p></div><div class="section" title="Implementation"><div class="titlepage"><div><div><h4 class="title"><a id="allocator.impl"></a>Implementation</h4></div></div></div><div class="section" title="Interface Design"><div class="titlepage"><div><div><h5 class="title"><a id="id577324"></a>Interface Design</h5></div></div></div><p>
|
||||
The only allocator interface that
|
||||
is supported is the standard C++ interface. As such, all STL
|
||||
containers have been adjusted, and all external allocators have
|
||||
|
|
@ -106,7 +106,7 @@
|
|||
</p><p>
|
||||
The base class that <code class="classname">allocator</code> is derived from
|
||||
may not be user-configurable.
|
||||
</p></div><div class="section" title="Selecting Default Allocation Policy"><div class="titlepage"><div><div><h5 class="title"><a id="id621931"></a>Selecting Default Allocation Policy</h5></div></div></div><p>
|
||||
</p></div><div class="section" title="Selecting Default Allocation Policy"><div class="titlepage"><div><div><h5 class="title"><a id="id555117"></a>Selecting Default Allocation Policy</h5></div></div></div><p>
|
||||
It's difficult to pick an allocation strategy that will provide
|
||||
maximum utility, without excessively penalizing some behavior. In
|
||||
fact, it's difficult just deciding which typical actions to measure
|
||||
|
|
@ -143,7 +143,7 @@
|
|||
The current default choice for
|
||||
<code class="classname">allocator</code> is
|
||||
<code class="classname">__gnu_cxx::new_allocator</code>.
|
||||
</p></div><div class="section" title="Disabling Memory Caching"><div class="titlepage"><div><div><h5 class="title"><a id="id623241"></a>Disabling Memory Caching</h5></div></div></div><p>
|
||||
</p></div><div class="section" title="Disabling Memory Caching"><div class="titlepage"><div><div><h5 class="title"><a id="id582708"></a>Disabling Memory Caching</h5></div></div></div><p>
|
||||
In use, <code class="classname">allocator</code> may allocate and
|
||||
deallocate using implementation-specified strategies and
|
||||
heuristics. Because of this, every call to an allocator object's
|
||||
|
|
@ -308,11 +308,11 @@
|
|||
A high-performance allocator that uses a bit-map to keep track
|
||||
of the used and unused memory locations. It has its own
|
||||
documentation, found <a class="link" href="bitmap_allocator.html" title="bitmap_allocator">here</a>.
|
||||
</p></li></ol></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="allocator.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id586118"></a><p><span class="title"><i>
|
||||
</p></li></ol></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="allocator.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry" title="ISO/IEC 14882:1998 Programming languages - C++"><a id="id630155"></a><p><span class="title"><i>
|
||||
ISO/IEC 14882:1998 Programming languages - C++
|
||||
</i>. </span>
|
||||
isoc++_1998
|
||||
<span class="pagenums">20.4 Memory. </span></p></div><div class="biblioentry"><a id="id586133"></a><p><span class="biblioid">
|
||||
<span class="pagenums">20.4 Memory. </span></p></div><div class="biblioentry"><a id="id579144"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.drdobbs.com/cpp/184403759" target="_top">
|
||||
<em class="citetitle">
|
||||
The Standard Librarian: What Are Allocators Good For?
|
||||
|
|
@ -320,19 +320,19 @@
|
|||
</a>
|
||||
. </span><span class="author"><span class="firstname">Matt</span> <span class="surname">Austern</span>. </span><span class="publisher"><span class="publishername">
|
||||
C/C++ Users Journal
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id575589"></a><p><span class="biblioid">
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id575453"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.cs.umass.edu/~emery/hoard/" target="_top">
|
||||
<em class="citetitle">
|
||||
The Hoard Memory Allocator
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Emery</span> <span class="surname">Berger</span>. </span></p></div><div class="biblioentry"><a id="id553897"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Emery</span> <span class="surname">Berger</span>. </span></p></div><div class="biblioentry"><a id="id614963"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.cs.umass.edu/~emery/pubs/berger-oopsla2002.pdf" target="_top">
|
||||
<em class="citetitle">
|
||||
Reconsidering Custom Memory Allocation
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Emery</span> <span class="surname">Berger</span>. </span><span class="author"><span class="firstname">Ben</span> <span class="surname">Zorn</span>. </span><span class="author"><span class="firstname">Kathryn</span> <span class="surname">McKinley</span>. </span><span class="copyright">Copyright © 2002 OOPSLA. </span></p></div><div class="biblioentry"><a id="id543446"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Emery</span> <span class="surname">Berger</span>. </span><span class="author"><span class="firstname">Ben</span> <span class="surname">Zorn</span>. </span><span class="author"><span class="firstname">Kathryn</span> <span class="surname">McKinley</span>. </span><span class="copyright">Copyright © 2002 OOPSLA. </span></p></div><div class="biblioentry"><a id="id596243"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.angelikalanger.com/Articles/C++Report/Allocators/Allocators.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Allocator Types
|
||||
|
|
@ -340,9 +340,9 @@
|
|||
</a>
|
||||
. </span><span class="author"><span class="firstname">Klaus</span> <span class="surname">Kreft</span>. </span><span class="author"><span class="firstname">Angelika</span> <span class="surname">Langer</span>. </span><span class="publisher"><span class="publishername">
|
||||
C/C++ Users Journal
|
||||
. </span></span></p></div><div class="biblioentry" title="The C++ Programming Language"><a id="id602880"></a><p><span class="title"><i>The C++ Programming Language</i>. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span><span class="copyright">Copyright © 2000 . </span><span class="pagenums">19.4 Allocators. </span><span class="publisher"><span class="publishername">
|
||||
. </span></span></p></div><div class="biblioentry" title="The C++ Programming Language"><a id="id616081"></a><p><span class="title"><i>The C++ Programming Language</i>. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span><span class="copyright">Copyright © 2000 . </span><span class="pagenums">19.4 Allocators. </span><span class="publisher"><span class="publishername">
|
||||
Addison Wesley
|
||||
. </span></span></p></div><div class="biblioentry" title="Yalloc: A Recycling C++ Allocator"><a id="id554889"></a><p><span class="title"><i>Yalloc: A Recycling C++ Allocator</i>. </span><span class="author"><span class="firstname">Felix</span> <span class="surname">Yen</span>. </span></p></div></div></div><div class="section" title="auto_ptr"><div class="titlepage"><div><div><h3 class="title"><a id="std.util.memory.auto_ptr"></a>auto_ptr</h3></div></div></div><div class="section" title="Limitations"><div class="titlepage"><div><div><h4 class="title"><a id="auto_ptr.limitations"></a>Limitations</h4></div></div></div><p>Explaining all of the fun and delicious things that can
|
||||
. </span></span></p></div><div class="biblioentry" title="Yalloc: A Recycling C++ Allocator"><a id="id555751"></a><p><span class="title"><i>Yalloc: A Recycling C++ Allocator</i>. </span><span class="author"><span class="firstname">Felix</span> <span class="surname">Yen</span>. </span></p></div></div></div><div class="section" title="auto_ptr"><div class="titlepage"><div><div><h3 class="title"><a id="std.util.memory.auto_ptr"></a>auto_ptr</h3></div></div></div><div class="section" title="Limitations"><div class="titlepage"><div><div><h4 class="title"><a id="auto_ptr.limitations"></a>Limitations</h4></div></div></div><p>Explaining all of the fun and delicious things that can
|
||||
happen with misuse of the <code class="classname">auto_ptr</code> class
|
||||
template (called <acronym class="acronym">AP</acronym> here) would take some
|
||||
time. Suffice it to say that the use of <acronym class="acronym">AP</acronym>
|
||||
|
|
@ -458,7 +458,7 @@ drops to zero.
|
|||
Derived classes override those functions to destroy resources in a context
|
||||
where the correct dynamic type is known. This is an application of the
|
||||
technique known as type erasure.
|
||||
</p></div><div class="section" title="Implementation"><div class="titlepage"><div><div><h4 class="title"><a id="shared_ptr.impl"></a>Implementation</h4></div></div></div><div class="section" title="Class Hierarchy"><div class="titlepage"><div><div><h5 class="title"><a id="id545398"></a>Class Hierarchy</h5></div></div></div><p>
|
||||
</p></div><div class="section" title="Implementation"><div class="titlepage"><div><div><h4 class="title"><a id="shared_ptr.impl"></a>Implementation</h4></div></div></div><div class="section" title="Class Hierarchy"><div class="titlepage"><div><div><h5 class="title"><a id="id662430"></a>Class Hierarchy</h5></div></div></div><p>
|
||||
A <code class="classname">shared_ptr<T></code> contains a pointer of
|
||||
type <span class="type">T*</span> and an object of type
|
||||
<code class="classname">__shared_count</code>. The shared_count contains a
|
||||
|
|
@ -500,7 +500,7 @@ be forwarded to <span class="type">Tp</span>'s constructor.
|
|||
Unlike the other <code class="classname">_Sp_counted_*</code> classes, this one is parameterized on the
|
||||
type of object, not the type of pointer; this is purely a convenience
|
||||
that simplifies the implementation slightly.
|
||||
</p></dd></dl></div></div><div class="section" title="Thread Safety"><div class="titlepage"><div><div><h5 class="title"><a id="id552877"></a>Thread Safety</h5></div></div></div><p>
|
||||
</p></dd></dl></div></div><div class="section" title="Thread Safety"><div class="titlepage"><div><div><h5 class="title"><a id="id622678"></a>Thread Safety</h5></div></div></div><p>
|
||||
The interface of <code class="classname">tr1::shared_ptr</code> was extended for C++0x
|
||||
with support for rvalue-references and the other features from
|
||||
N2351. As with other libstdc++ headers shared by TR1 and C++0x,
|
||||
|
|
@ -558,7 +558,7 @@ compiler, standard library, platform etc. For the version of
|
|||
shared_ptr in libstdc++ the compiler and library are fixed, which
|
||||
makes things much simpler: we have an atomic CAS or we don't, see Lock
|
||||
Policy below for details.
|
||||
</p></div><div class="section" title="Selecting Lock Policy"><div class="titlepage"><div><div><h5 class="title"><a id="id620315"></a>Selecting Lock Policy</h5></div></div></div><p>
|
||||
</p></div><div class="section" title="Selecting Lock Policy"><div class="titlepage"><div><div><h5 class="title"><a id="id577660"></a>Selecting Lock Policy</h5></div></div></div><p>
|
||||
</p><p>
|
||||
There is a single <code class="classname">_Sp_counted_base</code> class,
|
||||
which is a template parameterized on the enum
|
||||
|
|
@ -599,7 +599,7 @@ used when libstdc++ is built without <code class="literal">--enable-threads</cod
|
|||
<code class="filename">ext/atomicity.h</code>, which detect if the program
|
||||
is multi-threaded. If only one thread of execution exists in
|
||||
the program then less expensive non-atomic operations are used.
|
||||
</p></div><div class="section" title="Dual C++0x and TR1 Implementation"><div class="titlepage"><div><div><h5 class="title"><a id="id642095"></a>Dual C++0x and TR1 Implementation</h5></div></div></div><p>
|
||||
</p></div><div class="section" title="Dual C++0x and TR1 Implementation"><div class="titlepage"><div><div><h5 class="title"><a id="id586691"></a>Dual C++0x and TR1 Implementation</h5></div></div></div><p>
|
||||
The classes derived from <code class="classname">_Sp_counted_base</code> (see Class Hierarchy
|
||||
below) and <code class="classname">__shared_count</code> are implemented separately for C++0x
|
||||
and TR1, in <code class="filename">bits/boost_sp_shared_count.h</code> and
|
||||
|
|
@ -610,7 +610,7 @@ The TR1 implementation is considered relatively stable, so is unlikely to
|
|||
change unless bug fixes require it. If the code that is common to both
|
||||
C++0x and TR1 modes needs to diverge further then it might be necessary to
|
||||
duplicate additional classes and only make changes to the C++0x versions.
|
||||
</p></div><div class="section" title="Related functions and classes"><div class="titlepage"><div><div><h5 class="title"><a id="id628651"></a>Related functions and classes</h5></div></div></div><div class="variablelist"><dl><dt><span class="term"><code class="code">dynamic_pointer_cast</code>, <code class="code">static_pointer_cast</code>,
|
||||
</p></div><div class="section" title="Related functions and classes"><div class="titlepage"><div><div><h5 class="title"><a id="id578062"></a>Related functions and classes</h5></div></div></div><div class="variablelist"><dl><dt><span class="term"><code class="code">dynamic_pointer_cast</code>, <code class="code">static_pointer_cast</code>,
|
||||
<code class="code">const_pointer_cast</code></span></dt><dd><p>
|
||||
As noted in N2351, these functions can be implemented non-intrusively using
|
||||
the alias constructor. However the aliasing constructor is only available
|
||||
|
|
@ -643,10 +643,10 @@ is called. Users should not try to use this.
|
|||
As well as the extra constructors, this implementation also needs some
|
||||
members of _Sp_counted_deleter to be protected where they could otherwise
|
||||
be private.
|
||||
</p></dd></dl></div></div></div><div class="section" title="Use"><div class="titlepage"><div><div><h4 class="title"><a id="shared_ptr.using"></a>Use</h4></div></div></div><div class="section" title="Examples"><div class="titlepage"><div><div><h5 class="title"><a id="id595512"></a>Examples</h5></div></div></div><p>
|
||||
</p></dd></dl></div></div></div><div class="section" title="Use"><div class="titlepage"><div><div><h4 class="title"><a id="shared_ptr.using"></a>Use</h4></div></div></div><div class="section" title="Examples"><div class="titlepage"><div><div><h5 class="title"><a id="id586889"></a>Examples</h5></div></div></div><p>
|
||||
Examples of use can be found in the testsuite, under
|
||||
<code class="filename">testsuite/tr1/2_general_utilities/shared_ptr</code>.
|
||||
</p></div><div class="section" title="Unresolved Issues"><div class="titlepage"><div><div><h5 class="title"><a id="id595527"></a>Unresolved Issues</h5></div></div></div><p>
|
||||
</p></div><div class="section" title="Unresolved Issues"><div class="titlepage"><div><div><h5 class="title"><a id="id580916"></a>Unresolved Issues</h5></div></div></div><p>
|
||||
The resolution to C++ Standard Library issue <a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#674" target="_top">674</a>,
|
||||
"shared_ptr interface changes for consistency with N1856" will
|
||||
need to be implemented after it is accepted into the working
|
||||
|
|
@ -694,7 +694,7 @@ be private.
|
|||
code to work with, Peter Dimov in particular for his help and
|
||||
invaluable advice on thread safety. Phillip Jordan and Paolo
|
||||
Carlini for the lock policy implementation.
|
||||
</p></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="shared_ptr.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry"><a id="id605443"></a><p><span class="biblioid">
|
||||
</p></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h4 class="title"><a id="shared_ptr.biblio"></a>Bibliography</h4></div></div></div><div class="biblioentry"><a id="id573842"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2351.htm" target="_top">
|
||||
<em class="citetitle">
|
||||
Improving shared_ptr for C++0x, Revision 2
|
||||
|
|
@ -702,7 +702,7 @@ be private.
|
|||
</a>
|
||||
. </span><span class="subtitle">
|
||||
N2351
|
||||
. </span></p></div><div class="biblioentry"><a id="id557167"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id573865"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2456.html" target="_top">
|
||||
<em class="citetitle">
|
||||
C++ Standard Library Active Issues List
|
||||
|
|
@ -710,7 +710,7 @@ be private.
|
|||
</a>
|
||||
. </span><span class="subtitle">
|
||||
N2456
|
||||
. </span></p></div><div class="biblioentry"><a id="id560776"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id644519"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2461.pdf" target="_top">
|
||||
<em class="citetitle">
|
||||
Working Draft, Standard for Programming Language C++
|
||||
|
|
@ -718,7 +718,7 @@ be private.
|
|||
</a>
|
||||
. </span><span class="subtitle">
|
||||
N2461
|
||||
. </span></p></div><div class="biblioentry"><a id="id560798"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id644541"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://boost.org/libs/smart_ptr/shared_ptr.htm" target="_top">shared_ptr
|
||||
<em class="citetitle">
|
||||
Boost C++ Libraries documentation, shared_ptr
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="generalized_numeric_operations.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 12. Numerics"><div class="titlepage"><div><div><h2 class="title"><a id="std.numerics"></a>Chapter 12.
|
||||
Numerics
|
||||
<a id="id568408" class="indexterm"></a>
|
||||
<a id="id575640" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="numerics.html#std.numerics.complex">Complex</a></span></dt><dd><dl><dt><span class="sect2"><a href="numerics.html#numerics.complex.processing">complex Processing</a></span></dt></dl></dd><dt><span class="sect1"><a href="generalized_numeric_operations.html">Generalized Operations</a></span></dt><dt><span class="sect1"><a href="numerics_and_c.html">Interacting with C</a></span></dt><dd><dl><dt><span class="sect2"><a href="numerics_and_c.html#numerics.c.array">Numerics vs. Arrays</a></span></dt><dt><span class="sect2"><a href="numerics_and_c.html#numerics.c.c99">C99</a></span></dt></dl></dd></dl></div><div class="sect1" title="Complex"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.numerics.complex"></a>Complex</h2></div></div></div><p>
|
||||
</p><div class="sect2" title="complex Processing"><div class="titlepage"><div><div><h3 class="title"><a id="numerics.complex.processing"></a>complex Processing</h3></div></div></div><p>
|
||||
</p><p>Using <code class="code">complex<></code> becomes even more comple- er, sorry,
|
||||
|
|
|
|||
|
|
@ -13,11 +13,11 @@ explicit source declaration or by compiling existing sources with a
|
|||
specific compiler flag.
|
||||
</p><div class="sect1" title="Intro"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="manual.ext.parallel_mode.intro"></a>Intro</h2></div></div></div><p>The following library components in the include
|
||||
<code class="filename">numeric</code> are included in the parallel mode:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><code class="function">std::accumulate</code></p></li><li class="listitem"><p><code class="function">std::adjacent_difference</code></p></li><li class="listitem"><p><code class="function">std::inner_product</code></p></li><li class="listitem"><p><code class="function">std::partial_sum</code></p></li></ul></div><p>The following library components in the include
|
||||
<code class="filename">algorithm</code> are included in the parallel mode:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><code class="function">std::adjacent_find</code></p></li><li class="listitem"><p><code class="function">std::count</code></p></li><li class="listitem"><p><code class="function">std::count_if</code></p></li><li class="listitem"><p><code class="function">std::equal</code></p></li><li class="listitem"><p><code class="function">std::find</code></p></li><li class="listitem"><p><code class="function">std::find_if</code></p></li><li class="listitem"><p><code class="function">std::find_first_of</code></p></li><li class="listitem"><p><code class="function">std::for_each</code></p></li><li class="listitem"><p><code class="function">std::generate</code></p></li><li class="listitem"><p><code class="function">std::generate_n</code></p></li><li class="listitem"><p><code class="function">std::lexicographical_compare</code></p></li><li class="listitem"><p><code class="function">std::mismatch</code></p></li><li class="listitem"><p><code class="function">std::search</code></p></li><li class="listitem"><p><code class="function">std::search_n</code></p></li><li class="listitem"><p><code class="function">std::transform</code></p></li><li class="listitem"><p><code class="function">std::replace</code></p></li><li class="listitem"><p><code class="function">std::replace_if</code></p></li><li class="listitem"><p><code class="function">std::max_element</code></p></li><li class="listitem"><p><code class="function">std::merge</code></p></li><li class="listitem"><p><code class="function">std::min_element</code></p></li><li class="listitem"><p><code class="function">std::nth_element</code></p></li><li class="listitem"><p><code class="function">std::partial_sort</code></p></li><li class="listitem"><p><code class="function">std::partition</code></p></li><li class="listitem"><p><code class="function">std::random_shuffle</code></p></li><li class="listitem"><p><code class="function">std::set_union</code></p></li><li class="listitem"><p><code class="function">std::set_intersection</code></p></li><li class="listitem"><p><code class="function">std::set_symmetric_difference</code></p></li><li class="listitem"><p><code class="function">std::set_difference</code></p></li><li class="listitem"><p><code class="function">std::sort</code></p></li><li class="listitem"><p><code class="function">std::stable_sort</code></p></li><li class="listitem"><p><code class="function">std::unique_copy</code></p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h2 class="title"><a id="parallel_mode.biblio"></a>Bibliography</h2></div></div></div><div class="biblioentry" title="Parallelization of Bulk Operations for STL Dictionaries"><a id="id602261"></a><p><span class="title"><i>
|
||||
<code class="filename">algorithm</code> are included in the parallel mode:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><code class="function">std::adjacent_find</code></p></li><li class="listitem"><p><code class="function">std::count</code></p></li><li class="listitem"><p><code class="function">std::count_if</code></p></li><li class="listitem"><p><code class="function">std::equal</code></p></li><li class="listitem"><p><code class="function">std::find</code></p></li><li class="listitem"><p><code class="function">std::find_if</code></p></li><li class="listitem"><p><code class="function">std::find_first_of</code></p></li><li class="listitem"><p><code class="function">std::for_each</code></p></li><li class="listitem"><p><code class="function">std::generate</code></p></li><li class="listitem"><p><code class="function">std::generate_n</code></p></li><li class="listitem"><p><code class="function">std::lexicographical_compare</code></p></li><li class="listitem"><p><code class="function">std::mismatch</code></p></li><li class="listitem"><p><code class="function">std::search</code></p></li><li class="listitem"><p><code class="function">std::search_n</code></p></li><li class="listitem"><p><code class="function">std::transform</code></p></li><li class="listitem"><p><code class="function">std::replace</code></p></li><li class="listitem"><p><code class="function">std::replace_if</code></p></li><li class="listitem"><p><code class="function">std::max_element</code></p></li><li class="listitem"><p><code class="function">std::merge</code></p></li><li class="listitem"><p><code class="function">std::min_element</code></p></li><li class="listitem"><p><code class="function">std::nth_element</code></p></li><li class="listitem"><p><code class="function">std::partial_sort</code></p></li><li class="listitem"><p><code class="function">std::partition</code></p></li><li class="listitem"><p><code class="function">std::random_shuffle</code></p></li><li class="listitem"><p><code class="function">std::set_union</code></p></li><li class="listitem"><p><code class="function">std::set_intersection</code></p></li><li class="listitem"><p><code class="function">std::set_symmetric_difference</code></p></li><li class="listitem"><p><code class="function">std::set_difference</code></p></li><li class="listitem"><p><code class="function">std::sort</code></p></li><li class="listitem"><p><code class="function">std::stable_sort</code></p></li><li class="listitem"><p><code class="function">std::unique_copy</code></p></li></ul></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h2 class="title"><a id="parallel_mode.biblio"></a>Bibliography</h2></div></div></div><div class="biblioentry" title="Parallelization of Bulk Operations for STL Dictionaries"><a id="id588902"></a><p><span class="title"><i>
|
||||
Parallelization of Bulk Operations for STL Dictionaries
|
||||
</i>. </span><span class="author"><span class="firstname">Johannes</span> <span class="surname">Singler</span>. </span><span class="author"><span class="firstname">Leonor</span> <span class="surname">Frias</span>. </span><span class="copyright">Copyright © 2007 . </span><span class="publisher"><span class="publishername">
|
||||
Workshop on Highly Parallel Processing on a Chip (HPPC) 2007. (LNCS)
|
||||
. </span></span></p></div><div class="biblioentry" title="The Multi-Core Standard Template Library"><a id="id563911"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry" title="The Multi-Core Standard Template Library"><a id="id557850"></a><p><span class="title"><i>
|
||||
The Multi-Core Standard Template Library
|
||||
</i>. </span><span class="author"><span class="firstname">Johannes</span> <span class="surname">Singler</span>. </span><span class="author"><span class="firstname">Peter</span> <span class="surname">Sanders</span>. </span><span class="author"><span class="firstname">Felix</span> <span class="surname">Putze</span>. </span><span class="copyright">Copyright © 2007 . </span><span class="publisher"><span class="publishername">
|
||||
Euro-Par 2007: Parallel Processing. (LNCS 4641)
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@ vector-size: improvement = 3: call stack = 0x804842c ...
|
|||
call context.
|
||||
(Environment variable not supported.)
|
||||
</p></li></ul></div><p>
|
||||
</p></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h2 class="title"><a id="profile_mode.biblio"></a>Bibliography</h2></div></div></div><div class="biblioentry" title="Perflint: A Context Sensitive Performance Advisor for C++ Programs"><a id="id643281"></a><p><span class="title"><i>
|
||||
</p></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h2 class="title"><a id="profile_mode.biblio"></a>Bibliography</h2></div></div></div><div class="biblioentry" title="Perflint: A Context Sensitive Performance Advisor for C++ Programs"><a id="id676086"></a><p><span class="title"><i>
|
||||
Perflint: A Context Sensitive Performance Advisor for C++ Programs
|
||||
</i>. </span><span class="author"><span class="firstname">Lixia</span> <span class="surname">Liu</span>. </span><span class="author"><span class="firstname">Silvius</span> <span class="surname">Rus</span>. </span><span class="copyright">Copyright © 2009 . </span><span class="publisher"><span class="publishername">
|
||||
Proceedings of the 2009 International Symposium on Code Generation
|
||||
|
|
|
|||
|
|
@ -48,14 +48,8 @@
|
|||
</p><div class="variablelist"><dl><dt><span class="term">linux</span></dt><dd><p>
|
||||
If gcc 3.1.0 or later on is being used on linux, an attempt
|
||||
will be made to use "C" library functionality necessary for
|
||||
C++ named locale support. For gcc 3.2.1 and later, this
|
||||
means that glibc 2.2.5 or later is required and the "C"
|
||||
library de_DE locale information must be installed.
|
||||
</p><p>
|
||||
Note however that the sanity checks involving the de_DE
|
||||
locale are skipped when an explicit --enable-clocale=gnu
|
||||
configure option is used: only the basic checks are carried
|
||||
out, defending against misconfigurations.
|
||||
C++ named locale support. For gcc 4.6.0 and later, this
|
||||
means that glibc 2.3 or later is required.
|
||||
</p><p>
|
||||
If the 'gnu' locale model is being used, the following
|
||||
locales are used and tested in the libstdc++ testsuites.
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>The GNU C++ Library</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="prev" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="next" href="intro.html" title="Part I. Introduction" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">The GNU C++ Library</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="../spine.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="intro.html">Next</a></td></tr></table><hr /></div><div class="book" title="The GNU C++ Library"><div class="titlepage"><div><div><h1 class="title"><a id="manual-index"></a>The GNU C++ Library</h1></div><div><p class="copyright">Copyright © 2009, 2010
|
||||
<a class="ulink" href="http://www.fsf.org" target="_top">FSF</a>
|
||||
</p></div><div><div class="legalnotice" title="Legal Notice"><a id="id617538"></a><p>
|
||||
</p></div><div><div class="legalnotice" title="Legal Notice"><a id="id640845"></a><p>
|
||||
<a class="link" href="license.html" title="License">License</a>
|
||||
</p></div></div></div><hr /></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="part"><a href="intro.html">I.
|
||||
Introduction
|
||||
|
|
@ -61,7 +61,7 @@
|
|||
|
||||
</a></span></dt><dt><span class="appendix"><a href="appendix_gpl.html">D.
|
||||
<acronym class="acronym">GNU</acronym> General Public License version 3
|
||||
</a></span></dt><dt><span class="appendix"><a href="appendix_gfdl.html">E. GNU Free Documentation License</a></span></dt></dl></dd></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>1.1. <a href="status.html#id627700">C++ 1998/2003 Implementation Status</a></dt><dt>1.2. <a href="status.html#id555318">C++ 200x Implementation Status</a></dt><dt>1.3. <a href="status.html#id564268">C++ TR1 Implementation Status</a></dt><dt>1.4. <a href="status.html#id554510">C++ TR 24733 Implementation Status</a></dt><dt>3.1. <a href="using.html#id533607">C++ Command Options</a></dt><dt>3.2. <a href="using_headers.html#id560709">C++ 1998 Library Headers</a></dt><dt>3.3. <a href="using_headers.html#id553960">C++ 1998 Library Headers for C Library Facilities</a></dt><dt>3.4. <a href="using_headers.html#id599672">C++ 200x Library Headers</a></dt><dt>3.5. <a href="using_headers.html#id540099">C++ 200x Library Headers for C Library Facilities</a></dt><dt>3.6. <a href="using_headers.html#id534176">C++ TR 1 Library Headers</a></dt><dt>3.7. <a href="using_headers.html#id550605">C++ TR 1 Library Headers for C Library Facilities</a></dt><dt>3.8. <a href="using_headers.html#id560186">C++ TR 24733 Decimal Floating-Point Header</a></dt><dt>3.9. <a href="using_headers.html#id575732">C++ ABI Headers</a></dt><dt>3.10. <a href="using_headers.html#id553851">Extension Headers</a></dt><dt>3.11. <a href="using_headers.html#id543893">Extension Debug Headers</a></dt><dt>3.12. <a href="using_headers.html#id563676">Extension Profile Headers</a></dt><dt>3.13. <a href="using_headers.html#id538169">Extension Parallel Headers</a></dt><dt>17.1. <a href="bk01pt03ch17s03.html#id641002">Debugging Containers</a></dt><dt>17.2. <a href="bk01pt03ch17s03.html#id573570">Debugging Containers C++0x</a></dt><dt>18.1. <a href="bk01pt03ch18s03.html#id570004">Parallel Algorithms</a></dt><dt>19.1. <a href="bk01pt03ch19s02.html#id584531">Profile Code Location</a></dt><dt>19.2. <a href="bk01pt03ch19s07.html#id638005">Profile Diagnostics</a></dt><dt>20.1. <a href="bitmap_allocator.html#id572573">Bitmap Allocator Memory Map</a></dt><dt>A.1. <a href="documentation_style.html#id569176">HTML to Doxygen Markup Comparison</a></dt><dt>A.2. <a href="documentation_style.html#id662369">HTML to Docbook XML Markup Comparison</a></dt><dt>A.3. <a href="documentation_style.html#id640551">Docbook XML Element Use</a></dt><dt>B.1. <a href="api.html#id654608">Extension Allocators</a></dt><dt>B.2. <a href="api.html#id534867">Extension Allocators Continued</a></dt></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="../spine.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="intro.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">The GNU C++ Library Documentation </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Part I.
|
||||
</a></span></dt><dt><span class="appendix"><a href="appendix_gfdl.html">E. GNU Free Documentation License</a></span></dt></dl></dd></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>1.1. <a href="status.html#id609648">C++ 1998/2003 Implementation Status</a></dt><dt>1.2. <a href="status.html#id563383">C++ 200x Implementation Status</a></dt><dt>1.3. <a href="status.html#id571201">C++ TR1 Implementation Status</a></dt><dt>1.4. <a href="status.html#id643792">C++ TR 24733 Implementation Status</a></dt><dt>3.1. <a href="using.html#id597034">C++ Command Options</a></dt><dt>3.2. <a href="using_headers.html#id632905">C++ 1998 Library Headers</a></dt><dt>3.3. <a href="using_headers.html#id586668">C++ 1998 Library Headers for C Library Facilities</a></dt><dt>3.4. <a href="using_headers.html#id584766">C++ 200x Library Headers</a></dt><dt>3.5. <a href="using_headers.html#id584323">C++ 200x Library Headers for C Library Facilities</a></dt><dt>3.6. <a href="using_headers.html#id584672">C++ TR 1 Library Headers</a></dt><dt>3.7. <a href="using_headers.html#id644292">C++ TR 1 Library Headers for C Library Facilities</a></dt><dt>3.8. <a href="using_headers.html#id616158">C++ TR 24733 Decimal Floating-Point Header</a></dt><dt>3.9. <a href="using_headers.html#id663762">C++ ABI Headers</a></dt><dt>3.10. <a href="using_headers.html#id639070">Extension Headers</a></dt><dt>3.11. <a href="using_headers.html#id597366">Extension Debug Headers</a></dt><dt>3.12. <a href="using_headers.html#id586099">Extension Profile Headers</a></dt><dt>3.13. <a href="using_headers.html#id652295">Extension Parallel Headers</a></dt><dt>17.1. <a href="bk01pt03ch17s03.html#id567337">Debugging Containers</a></dt><dt>17.2. <a href="bk01pt03ch17s03.html#id680816">Debugging Containers C++0x</a></dt><dt>18.1. <a href="bk01pt03ch18s03.html#id669646">Parallel Algorithms</a></dt><dt>19.1. <a href="bk01pt03ch19s02.html#id578264">Profile Code Location</a></dt><dt>19.2. <a href="bk01pt03ch19s07.html#id522678">Profile Diagnostics</a></dt><dt>20.1. <a href="bitmap_allocator.html#id596113">Bitmap Allocator Memory Map</a></dt><dt>A.1. <a href="documentation_style.html#id672808">HTML to Doxygen Markup Comparison</a></dt><dt>A.2. <a href="documentation_style.html#id524034">HTML to Docbook XML Markup Comparison</a></dt><dt>A.3. <a href="documentation_style.html#id564132">Docbook XML Element Use</a></dt><dt>B.1. <a href="api.html#id661302">Extension Allocators</a></dt><dt>B.2. <a href="api.html#id681001">Extension Allocators Continued</a></dt></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="../spine.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="intro.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">The GNU C++ Library Documentation </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Part I.
|
||||
Introduction
|
||||
|
||||
</td></tr></table></div></body></html>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="localization.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 7. Strings"><div class="titlepage"><div><div><h2 class="title"><a id="std.strings"></a>Chapter 7.
|
||||
Strings
|
||||
<a id="id617201" class="indexterm"></a>
|
||||
<a id="id591081" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="strings.html#std.strings.string">String Classes</a></span></dt><dd><dl><dt><span class="sect2"><a href="strings.html#strings.string.simple">Simple Transformations</a></span></dt><dt><span class="sect2"><a href="strings.html#strings.string.case">Case Sensitivity</a></span></dt><dt><span class="sect2"><a href="strings.html#strings.string.character_types">Arbitrary Character Types</a></span></dt><dt><span class="sect2"><a href="strings.html#strings.string.token">Tokenizing</a></span></dt><dt><span class="sect2"><a href="strings.html#strings.string.shrink">Shrink to Fit</a></span></dt><dt><span class="sect2"><a href="strings.html#strings.string.Cstring">CString (MFC)</a></span></dt></dl></dd></dl></div><div class="sect1" title="String Classes"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.strings.string"></a>String Classes</h2></div></div></div><div class="sect2" title="Simple Transformations"><div class="titlepage"><div><div><h3 class="title"><a id="strings.string.simple"></a>Simple Transformations</h3></div></div></div><p>
|
||||
Here are Standard, simple, and portable ways to perform common
|
||||
transformations on a <code class="code">string</code> instance, such as
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="dynamic_memory.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 4. Support"><div class="titlepage"><div><div><h2 class="title"><a id="std.support"></a>Chapter 4.
|
||||
Support
|
||||
<a id="id551158" class="indexterm"></a>
|
||||
<a id="id620172" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="support.html#std.support.types">Types</a></span></dt><dd><dl><dt><span class="sect2"><a href="support.html#std.support.types.fundamental">Fundamental Types</a></span></dt><dt><span class="sect2"><a href="support.html#std.support.types.numeric_limits">Numeric Properties</a></span></dt><dt><span class="sect2"><a href="support.html#std.support.types.null">NULL</a></span></dt></dl></dd><dt><span class="sect1"><a href="dynamic_memory.html">Dynamic Memory</a></span></dt><dt><span class="sect1"><a href="termination.html">Termination</a></span></dt><dd><dl><dt><span class="sect2"><a href="termination.html#support.termination.handlers">Termination Handlers</a></span></dt><dt><span class="sect2"><a href="termination.html#support.termination.verbose">Verbose Terminate Handler</a></span></dt></dl></dd></dl></div><p>
|
||||
This part deals with the functions called and objects created
|
||||
automatically during the course of a program's existence.
|
||||
|
|
|
|||
|
|
@ -493,7 +493,7 @@ only default variables.
|
|||
reporting functions including:
|
||||
</p><div class="itemizedlist"><ul class="itemizedlist" type="circle"><li class="listitem"><p>time_counter</p></li><li class="listitem"><p>resource_counter</p></li><li class="listitem"><p>report_performance</p></li></ul></div></li></ul></div></div></div><div class="sect2" title="Special Topics"><div class="titlepage"><div><div><h3 class="title"><a id="test.special"></a>Special Topics</h3></div></div></div><div class="sect3" title="Qualifying Exception Safety Guarantees"><div class="titlepage"><div><div><h4 class="title"><a id="test.exception.safety"></a>
|
||||
Qualifying Exception Safety Guarantees
|
||||
<a id="id643454" class="indexterm"></a>
|
||||
<a id="id661998" class="indexterm"></a>
|
||||
</h4></div></div></div><div class="sect4" title="Overview"><div class="titlepage"><div><div><h5 class="title"><a id="test.exception.safety.overview"></a>Overview</h5></div></div></div><p>
|
||||
Testing is composed of running a particular test sequence,
|
||||
and looking at what happens to the surrounding code when
|
||||
|
|
|
|||
|
|
@ -11,5 +11,5 @@
|
|||
enumerated and detailed in the table below.
|
||||
</p><p>
|
||||
By default, <span class="command"><strong>g++</strong></span> is equivalent to <span class="command"><strong>g++ -std=gnu++98</strong></span>. The standard library also defaults to this dialect.
|
||||
</p><div class="table"><a id="id533607"></a><p class="title"><b>Table 3.1. C++ Command Options</b></p><div class="table-contents"><table summary="C++ Command Options" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Option Flags</th><th align="left">Description</th></tr></thead><tbody><tr><td align="left"><code class="literal">-std=c++98</code></td><td align="left">Use the 1998 ISO C++ standard plus amendments.</td></tr><tr><td align="left"><code class="literal">-std=gnu++98</code></td><td align="left">As directly above, with GNU extensions.</td></tr><tr><td align="left"><code class="literal">-std=c++0x</code></td><td align="left">Use the working draft of the upcoming ISO C++0x standard.</td></tr><tr><td align="left"><code class="literal">-std=gnu++0x</code></td><td align="left">As directly above, with GNU extensions.</td></tr><tr><td align="left"><code class="literal">-fexceptions</code></td><td align="left">See <a class="link" href="using_exceptions.html#intro.using.exception.no" title="Doing without">exception-free dialect</a></td></tr><tr><td align="left"><code class="literal">-frtti</code></td><td align="left">As above, but RTTI-free dialect.</td></tr><tr><td align="left"><code class="literal">-pthread</code> or <code class="literal">-pthreads</code></td><td align="left">For ISO C++0x <thread>, <future>,
|
||||
</p><div class="table"><a id="id597034"></a><p class="title"><b>Table 3.1. C++ Command Options</b></p><div class="table-contents"><table summary="C++ Command Options" border="1"><colgroup><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Option Flags</th><th align="left">Description</th></tr></thead><tbody><tr><td align="left"><code class="literal">-std=c++98</code></td><td align="left">Use the 1998 ISO C++ standard plus amendments.</td></tr><tr><td align="left"><code class="literal">-std=gnu++98</code></td><td align="left">As directly above, with GNU extensions.</td></tr><tr><td align="left"><code class="literal">-std=c++0x</code></td><td align="left">Use the working draft of the upcoming ISO C++0x standard.</td></tr><tr><td align="left"><code class="literal">-std=gnu++0x</code></td><td align="left">As directly above, with GNU extensions.</td></tr><tr><td align="left"><code class="literal">-fexceptions</code></td><td align="left">See <a class="link" href="using_exceptions.html#intro.using.exception.no" title="Doing without">exception-free dialect</a></td></tr><tr><td align="left"><code class="literal">-frtti</code></td><td align="left">As above, but RTTI-free dialect.</td></tr><tr><td align="left"><code class="literal">-pthread</code> or <code class="literal">-pthreads</code></td><td align="left">For ISO C++0x <thread>, <future>,
|
||||
<mutex>, or <condition_variable>.</td></tr><tr><td align="left"><code class="literal">-fopenmp</code></td><td align="left">For <a class="link" href="parallel_mode.html" title="Chapter 18. Parallel Mode">parallel</a> mode.</td></tr></tbody></table></div></div><br class="table-break" /></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="make.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="intro.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="using_headers.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Make </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Headers</td></tr></table></div></body></html>
|
||||
|
|
|
|||
|
|
@ -266,7 +266,7 @@ is called.
|
|||
}
|
||||
catch(...)
|
||||
{ this->_M_setstate(ios_base::badbit); }
|
||||
</pre></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="using.exceptions.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id577352"></a><p><span class="biblioid">
|
||||
</pre></div></div><div class="bibliography" title="Bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="using.exceptions.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id567810"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opengroup.org/austin" target="_top">
|
||||
<em class="citetitle">
|
||||
System Interface Definitions, Issue 7 (IEEE Std. 1003.1-2008)
|
||||
|
|
@ -277,7 +277,7 @@ is called.
|
|||
. </span><span class="copyright">Copyright © 2008
|
||||
The Open Group/The Institute of Electrical and Electronics
|
||||
Engineers, Inc.
|
||||
. </span></p></div><div class="biblioentry"><a id="id596020"></a><p><span class="biblioid">
|
||||
. </span></p></div><div class="biblioentry"><a id="id616352"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.boost.org/community/error_handling.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Error and Exception Handling
|
||||
|
|
@ -285,7 +285,7 @@ is called.
|
|||
</a>
|
||||
. </span><span class="author"><span class="firstname">David</span> <span class="surname">Abrahams </span>. </span><span class="publisher"><span class="publishername">
|
||||
Boost
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id631410"></a><p><span class="biblioid">
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id568369"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.boost.org/community/exception_safety.html" target="_top">
|
||||
<em class="citetitle">
|
||||
Exception-Safety in Generic Components
|
||||
|
|
@ -293,7 +293,7 @@ is called.
|
|||
</a>
|
||||
. </span><span class="author"><span class="firstname">David</span> <span class="surname">Abrahams</span>. </span><span class="publisher"><span class="publishername">
|
||||
Boost
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id585635"></a><p><span class="biblioid">
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id634686"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="www.open-std.org/jtc1/sc22/wg21/docs/papers/1997/N1077.pdf" target="_top">
|
||||
<em class="citetitle">
|
||||
Standard Library Exception Policy
|
||||
|
|
@ -301,7 +301,7 @@ is called.
|
|||
</a>
|
||||
. </span><span class="author"><span class="firstname">Matt</span> <span class="surname">Austern</span>. </span><span class="publisher"><span class="publishername">
|
||||
WG21 N1077
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id560315"></a><p><span class="biblioid">
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id615482"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://gcc.gnu.org/ml/gcc-patches/2001-03/msg00661.html" target="_top">
|
||||
<em class="citetitle">
|
||||
ia64 c++ abi exception handling
|
||||
|
|
@ -309,17 +309,17 @@ is called.
|
|||
</a>
|
||||
. </span><span class="author"><span class="firstname">Richard</span> <span class="surname">Henderson</span>. </span><span class="publisher"><span class="publishername">
|
||||
GNU
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id576380"></a><p><span class="biblioid">
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id643886"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://www.research.att.com/~bs/3rd_safe.pdf" target="_top">
|
||||
<em class="citetitle">
|
||||
Appendix E: Standard-Library Exception Safety
|
||||
</em>
|
||||
</a>
|
||||
. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span></p></div><div class="biblioentry" title="Exceptional C++"><a id="id608258"></a><p><span class="title"><i>
|
||||
. </span><span class="author"><span class="firstname">Bjarne</span> <span class="surname">Stroustrup</span>. </span></p></div><div class="biblioentry" title="Exceptional C++"><a id="id573918"></a><p><span class="title"><i>
|
||||
Exceptional C++
|
||||
</i>. </span><span class="pagenums">
|
||||
Exception-Safety Issues and Techniques
|
||||
. </span><span class="author"><span class="firstname">Herb</span> <span class="surname">Sutter</span>. </span></p></div><div class="biblioentry"><a id="id566207"></a><p><span class="biblioid">
|
||||
. </span><span class="author"><span class="firstname">Herb</span> <span class="surname">Sutter</span>. </span></p></div><div class="biblioentry"><a id="id573940"></a><p><span class="biblioid">
|
||||
<a class="ulink" href="http://gcc.gnu.org/PR25191" target="_top">
|
||||
<em class="citetitle">
|
||||
GCC Bug 25191: exception_defines.h #defines try/catch
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -7,7 +7,7 @@
|
|||
Standard Contents
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="pairs.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 6. Utilities"><div class="titlepage"><div><div><h2 class="title"><a id="std.util"></a>Chapter 6.
|
||||
Utilities
|
||||
<a id="id607585" class="indexterm"></a>
|
||||
<a id="id578372" class="indexterm"></a>
|
||||
</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="utilities.html#std.util.functors">Functors</a></span></dt><dt><span class="section"><a href="pairs.html">Pairs</a></span></dt><dt><span class="section"><a href="memory.html">Memory</a></span></dt><dd><dl><dt><span class="section"><a href="memory.html#std.util.memory.allocator">Allocators</a></span></dt><dt><span class="section"><a href="memory.html#std.util.memory.auto_ptr">auto_ptr</a></span></dt><dt><span class="section"><a href="memory.html#std.util.memory.shared_ptr">shared_ptr</a></span></dt></dl></dd><dt><span class="section"><a href="traits.html">Traits</a></span></dt></dl></div><div class="section" title="Functors"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="std.util.functors"></a>Functors</h2></div></div></div><p>If you don't know what functors are, you're not alone. Many people
|
||||
get slightly the wrong idea. In the interest of not reinventing
|
||||
the wheel, we will refer you to the introduction to the functor
|
||||
|
|
|
|||
|
|
@ -0,0 +1,560 @@
|
|||
<appendix id="appendix.gfdl-1.3">
|
||||
<?dbhtml filename="appendix_gfdl.html"?>
|
||||
<title>GNU Free Documentation License</title>
|
||||
<simpara>Version 1.3, 3 November 2008</simpara>
|
||||
<simpara>
|
||||
Copyright © 2000, 2001, 2002, 2007, 2008
|
||||
<ulink url="http://www.fsf.org/">Free Software Foundation, Inc.</ulink>
|
||||
</simpara>
|
||||
<simpara>
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section0" renderas="sect2">
|
||||
0. PREAMBLE
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
The purpose of this License is to make a manual, textbook, or other
|
||||
functional and useful document “free” in the sense of freedom:
|
||||
to assure everyone the effective freedom to copy and redistribute it, with
|
||||
or without modifying it, either commercially or
|
||||
noncommercially. Secondarily, this License preserves for the author and
|
||||
publisher a way to get credit for their work, while not being considered
|
||||
responsible for modifications made by others.
|
||||
</simpara>
|
||||
<simpara>
|
||||
This License is a kind of “copyleft”, which means that
|
||||
derivative works of the document must themselves be free in the same
|
||||
sense. It complements the GNU General Public License, which is a copyleft
|
||||
license designed for free software.
|
||||
</simpara>
|
||||
<simpara>
|
||||
We have designed this License in order to use it for manuals for free
|
||||
software, because free software needs free documentation: a free program
|
||||
should come with manuals providing the same freedoms that the software
|
||||
does. But this License is not limited to software manuals; it can be used
|
||||
for any textual work, regardless of subject matter or whether it is
|
||||
published as a printed book. We recommend this License principally for
|
||||
works whose purpose is instruction or reference.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section1" renderas="sect2">
|
||||
1. APPLICABILITY AND DEFINITIONS
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
This License applies to any manual or other work, in any medium, that
|
||||
contains a notice placed by the copyright holder saying it can be
|
||||
distributed under the terms of this License. Such a notice grants a
|
||||
world-wide, royalty-free license, unlimited in duration, to use that work
|
||||
under the conditions stated herein. The “Document”, below,
|
||||
refers to any such manual or work. Any member of the public is a licensee,
|
||||
and is addressed as “you”. You accept the license if you copy,
|
||||
modify or distribute the work in a way requiring permission under
|
||||
copyright law.
|
||||
</simpara>
|
||||
<simpara>
|
||||
A “Modified Version” of the Document means any work containing
|
||||
the Document or a portion of it, either copied verbatim, or with
|
||||
modifications and/or translated into another language.
|
||||
</simpara>
|
||||
<simpara>
|
||||
A “Secondary Section” is a named appendix or a front-matter
|
||||
section of the Document that deals exclusively with the relationship of
|
||||
the publishers or authors of the Document to the Document’s overall
|
||||
subject (or to related matters) and contains nothing that could fall
|
||||
directly within that overall subject. (Thus, if the Document is in part a
|
||||
textbook of mathematics, a Secondary Section may not explain any
|
||||
mathematics.) The relationship could be a matter of historical connection
|
||||
with the subject or with related matters, or of legal, commercial,
|
||||
philosophical, ethical or political position regarding them.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The “Invariant Sections” are certain Secondary Sections whose
|
||||
titles are designated, as being those of Invariant Sections, in the notice
|
||||
that says that the Document is released under this License. If a section
|
||||
does not fit the above definition of Secondary then it is not allowed to
|
||||
be designated as Invariant. The Document may contain zero Invariant
|
||||
Sections. If the Document does not identify any Invariant Sections then
|
||||
there are none.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The “Cover Texts” are certain short passages of text that are
|
||||
listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says
|
||||
that the Document is released under this License. A Front-Cover Text may
|
||||
be at most 5 words, and a Back-Cover Text may be at most 25 words.
|
||||
</simpara>
|
||||
<simpara>
|
||||
A “Transparent” copy of the Document means a machine-readable
|
||||
copy, represented in a format whose specification is available to the
|
||||
general public, that is suitable for revising the document
|
||||
straightforwardly with generic text editors or (for images composed of
|
||||
pixels) generic paint programs or (for drawings) some widely available
|
||||
drawing editor, and that is suitable for input to text formatters or for
|
||||
automatic translation to a variety of formats suitable for input to text
|
||||
formatters. A copy made in an otherwise Transparent file format whose
|
||||
markup, or absence of markup, has been arranged to thwart or discourage
|
||||
subsequent modification by readers is not Transparent. An image format is
|
||||
not Transparent if used for any substantial amount of text. A copy that is
|
||||
not “Transparent” is called “Opaque”.
|
||||
</simpara>
|
||||
<simpara>
|
||||
Examples of suitable formats for Transparent copies include plain ASCII
|
||||
without markup, Texinfo input format, LaTeX input format, SGML or XML
|
||||
using a publicly available DTD, and standard-conforming simple HTML,
|
||||
PostScript or PDF designed for human modification. Examples of transparent
|
||||
image formats include PNG, XCF and JPG. Opaque formats include proprietary
|
||||
formats that can be read and edited only by proprietary word processors,
|
||||
SGML or XML for which the DTD and/or processing tools are not generally
|
||||
available, and the machine-generated HTML, PostScript or PDF produced by
|
||||
some word processors for output purposes only.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The “Title Page” means, for a printed book, the title page
|
||||
itself, plus such following pages as are needed to hold, legibly, the
|
||||
material this License requires to appear in the title page. For works in
|
||||
formats which do not have any title page as such, “Title Page”
|
||||
means the text near the most prominent appearance of the work’s
|
||||
title, preceding the beginning of the body of the text.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The “publisher” means any person or entity that distributes
|
||||
copies of the Document to the public.
|
||||
</simpara>
|
||||
<simpara>
|
||||
A section “Entitled XYZ” means a named subunit of the Document
|
||||
whose title either is precisely XYZ or contains XYZ in parentheses
|
||||
following text that translates XYZ in another language. (Here XYZ stands
|
||||
for a specific section name mentioned below, such as
|
||||
“Acknowledgements”, “Dedications”,
|
||||
“Endorsements”, or “History”.) To “Preserve
|
||||
the Title” of such a section when you modify the Document means that
|
||||
it remains a section “Entitled XYZ” according to this
|
||||
definition.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The Document may include Warranty Disclaimers next to the notice which
|
||||
states that this License applies to the Document. These Warranty
|
||||
Disclaimers are considered to be included by reference in this License,
|
||||
but only as regards disclaiming warranties: any other implication that
|
||||
these Warranty Disclaimers may have is void and has no effect on the
|
||||
meaning of this License.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section2" renderas="sect2">
|
||||
2. VERBATIM COPYING
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
You may copy and distribute the Document in any medium, either
|
||||
commercially or noncommercially, provided that this License, the copyright
|
||||
notices, and the license notice saying this License applies to the
|
||||
Document are reproduced in all copies, and that you add no other
|
||||
conditions whatsoever to those of this License. You may not use technical
|
||||
measures to obstruct or control the reading or further copying of the
|
||||
copies you make or distribute. However, you may accept compensation in
|
||||
exchange for copies. If you distribute a large enough number of copies you
|
||||
must also follow the conditions in section 3.
|
||||
</simpara>
|
||||
<simpara>
|
||||
You may also lend copies, under the same conditions stated above, and you
|
||||
may publicly display copies.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section3" renderas="sect2">
|
||||
3. COPYING IN QUANTITY
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
If you publish printed copies (or copies in media that commonly have
|
||||
printed covers) of the Document, numbering more than 100, and the
|
||||
Document’s license notice requires Cover Texts, you must enclose
|
||||
the copies in covers that carry, clearly and legibly, all these Cover
|
||||
Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the
|
||||
back cover. Both covers must also clearly and legibly identify you as the
|
||||
publisher of these copies. The front cover must present the full title
|
||||
with all words of the title equally prominent and visible. You may add
|
||||
other material on the covers in addition. Copying with changes limited to
|
||||
the covers, as long as they preserve the title of the Document and satisfy
|
||||
these conditions, can be treated as verbatim copying in other respects.
|
||||
</simpara>
|
||||
<simpara>
|
||||
If the required texts for either cover are too voluminous to fit legibly,
|
||||
you should put the first ones listed (as many as fit reasonably) on the
|
||||
actual cover, and continue the rest onto adjacent pages.
|
||||
</simpara>
|
||||
<simpara>
|
||||
If you publish or distribute Opaque copies of the Document numbering more
|
||||
than 100, you must either include a machine-readable Transparent copy
|
||||
along with each Opaque copy, or state in or with each Opaque copy a
|
||||
computer-network location from which the general network-using public has
|
||||
access to download using public-standard network protocols a complete
|
||||
Transparent copy of the Document, free of added material. If you use the
|
||||
latter option, you must take reasonably prudent steps, when you begin
|
||||
distribution of Opaque copies in quantity, to ensure that this Transparent
|
||||
copy will remain thus accessible at the stated location until at least one
|
||||
year after the last time you distribute an Opaque copy (directly or
|
||||
through your agents or retailers) of that edition to the public.
|
||||
</simpara>
|
||||
<simpara>
|
||||
It is requested, but not required, that you contact the authors of the
|
||||
Document well before redistributing any large number of copies, to give
|
||||
them a chance to provide you with an updated version of the Document.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section4" renderas="sect2">
|
||||
4. MODIFICATIONS
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
You may copy and distribute a Modified Version of the Document under the
|
||||
conditions of sections 2 and 3 above, provided that you release the
|
||||
Modified Version under precisely this License, with the Modified Version
|
||||
filling the role of the Document, thus licensing distribution and
|
||||
modification of the Modified Version to whoever possesses a copy of it. In
|
||||
addition, you must do these things in the Modified Version:
|
||||
</simpara>
|
||||
<orderedlist numeration="upperalpha">
|
||||
<listitem>
|
||||
<simpara>
|
||||
Use in the Title Page (and on the covers, if any) a title distinct
|
||||
from that of the Document, and from those of previous versions (which
|
||||
should, if there were any, be listed in the History section of the
|
||||
Document). You may use the same title as a previous version if the
|
||||
original publisher of that version gives permission.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
List on the Title Page, as authors, one or more persons or entities
|
||||
responsible for authorship of the modifications in the Modified
|
||||
Version, together with at least five of the principal authors of the
|
||||
Document (all of its principal authors, if it has fewer than five),
|
||||
unless they release you from this requirement.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
State on the Title page the name of the publisher of the Modified
|
||||
Version, as the publisher.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Preserve all the copyright notices of the Document.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Add an appropriate copyright notice for your modifications adjacent to
|
||||
the other copyright notices.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Include, immediately after the copyright notices, a license notice
|
||||
giving the public permission to use the Modified Version under the
|
||||
terms of this License, in the form shown in the Addendum below.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Preserve in that license notice the full lists of Invariant Sections
|
||||
and required Cover Texts given in the Document’s license
|
||||
notice.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Include an unaltered copy of this License.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Preserve the section Entitled “History”, Preserve its
|
||||
Title, and add to it an item stating at least the title, year, new
|
||||
authors, and publisher of the Modified Version as given on the Title
|
||||
Page. If there is no section Entitled “History” in the
|
||||
Document, create one stating the title, year, authors, and publisher
|
||||
of the Document as given on its Title Page, then add an item
|
||||
describing the Modified Version as stated in the previous sentence.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Preserve the network location, if any, given in the Document for
|
||||
public access to a Transparent copy of the Document, and likewise the
|
||||
network locations given in the Document for previous versions it was
|
||||
based on. These may be placed in the “History”
|
||||
section. You may omit a network location for a work that was published
|
||||
at least four years before the Document itself, or if the original
|
||||
publisher of the version it refers to gives permission.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
For any section Entitled “Acknowledgements” or
|
||||
“Dedications”, Preserve the Title of the section, and
|
||||
preserve in the section all the substance and tone of each of the
|
||||
contributor acknowledgements and/or dedications given therein.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Preserve all the Invariant Sections of the Document, unaltered in
|
||||
their text and in their titles. Section numbers or the equivalent are
|
||||
not considered part of the section titles.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Delete any section Entitled “Endorsements”. Such a section
|
||||
may not be included in the Modified Version.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Do not retitle any existing section to be Entitled
|
||||
“Endorsements” or to conflict in title with any Invariant
|
||||
Section.
|
||||
</simpara>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<simpara>
|
||||
Preserve any Warranty Disclaimers.
|
||||
</simpara>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<simpara>
|
||||
If the Modified Version includes new front-matter sections or appendices
|
||||
that qualify as Secondary Sections and contain no material copied from the
|
||||
Document, you may at your option designate some or all of these sections
|
||||
as invariant. To do this, add their titles to the list of Invariant
|
||||
Sections in the Modified Version’s license notice. These titles
|
||||
must be distinct from any other section titles.
|
||||
</simpara>
|
||||
<simpara>
|
||||
You may add a section Entitled “Endorsements”, provided it
|
||||
contains nothing but endorsements of your Modified Version by various
|
||||
parties — for example, statements of peer review or that the text
|
||||
has been approved by an organization as the authoritative definition of a
|
||||
standard.
|
||||
</simpara>
|
||||
<simpara>
|
||||
You may add a passage of up to five words as a Front-Cover Text, and a
|
||||
passage of up to 25 words as a Back-Cover Text, to the end of the list of
|
||||
Cover Texts in the Modified Version. Only one passage of Front-Cover Text
|
||||
and one of Back-Cover Text may be added by (or through arrangements made
|
||||
by) any one entity. If the Document already includes a cover text for the
|
||||
same cover, previously added by you or by arrangement made by the same
|
||||
entity you are acting on behalf of, you may not add another; but you may
|
||||
replace the old one, on explicit permission from the previous publisher
|
||||
that added the old one.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The author(s) and publisher(s) of the Document do not by this License give
|
||||
permission to use their names for publicity for or to assert or imply
|
||||
endorsement of any Modified Version.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section5" renderas="sect2">
|
||||
5. COMBINING DOCUMENTS
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
You may combine the Document with other documents released under this
|
||||
License, under the terms defined in section 4 above for modified versions,
|
||||
provided that you include in the combination all of the Invariant Sections
|
||||
of all of the original documents, unmodified, and list them all as
|
||||
Invariant Sections of your combined work in its license notice, and that
|
||||
you preserve all their Warranty Disclaimers.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The combined work need only contain one copy of this License, and multiple
|
||||
identical Invariant Sections may be replaced with a single copy. If there
|
||||
are multiple Invariant Sections with the same name but different contents,
|
||||
make the title of each such section unique by adding at the end of it, in
|
||||
parentheses, the name of the original author or publisher of that section
|
||||
if known, or else a unique number. Make the same adjustment to the section
|
||||
titles in the list of Invariant Sections in the license notice of the
|
||||
combined work.
|
||||
</simpara>
|
||||
<simpara>
|
||||
In the combination, you must combine any sections Entitled
|
||||
“History” in the various original documents, forming one
|
||||
section Entitled “History”; likewise combine any sections
|
||||
Entitled “Acknowledgements”, and any sections Entitled
|
||||
“Dedications”. You must delete all sections Entitled
|
||||
“Endorsements”.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section6" renderas="sect2">
|
||||
6. COLLECTIONS OF DOCUMENTS
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
You may make a collection consisting of the Document and other documents
|
||||
released under this License, and replace the individual copies of this
|
||||
License in the various documents with a single copy that is included in
|
||||
the collection, provided that you follow the rules of this License for
|
||||
verbatim copying of each of the documents in all other respects.
|
||||
</simpara>
|
||||
<simpara>
|
||||
You may extract a single document from such a collection, and distribute
|
||||
it individually under this License, provided you insert a copy of this
|
||||
License into the extracted document, and follow this License in all other
|
||||
respects regarding verbatim copying of that document.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section7" renderas="sect2">
|
||||
7. AGGREGATION WITH INDEPENDENT WORKS
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
A compilation of the Document or its derivatives with other separate and
|
||||
independent documents or works, in or on a volume of a storage or
|
||||
distribution medium, is called an “aggregate” if the copyright
|
||||
resulting from the compilation is not used to limit the legal rights of
|
||||
the compilation’s users beyond what the individual works
|
||||
permit. When the Document is included in an aggregate, this License does
|
||||
not apply to the other works in the aggregate which are not themselves
|
||||
derivative works of the Document.
|
||||
</simpara>
|
||||
<simpara>
|
||||
If the Cover Text requirement of section 3 is applicable to these copies
|
||||
of the Document, then if the Document is less than one half of the entire
|
||||
aggregate, the Document’s Cover Texts may be placed on covers that
|
||||
bracket the Document within the aggregate, or the electronic equivalent of
|
||||
covers if the Document is in electronic form. Otherwise they must appear
|
||||
on printed covers that bracket the whole aggregate.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section8" renderas="sect2">
|
||||
8. TRANSLATION
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
Translation is considered a kind of modification, so you may distribute
|
||||
translations of the Document under the terms of section 4. Replacing
|
||||
Invariant Sections with translations requires special permission from
|
||||
their copyright holders, but you may include translations of some or all
|
||||
Invariant Sections in addition to the original versions of these Invariant
|
||||
Sections. You may include a translation of this License, and all the
|
||||
license notices in the Document, and any Warranty Disclaimers, provided
|
||||
that you also include the original English version of this License and the
|
||||
original versions of those notices and disclaimers. In case of a
|
||||
disagreement between the translation and the original version of this
|
||||
License or a notice or disclaimer, the original version will prevail.
|
||||
</simpara>
|
||||
<simpara>
|
||||
If a section in the Document is Entitled “Acknowledgements”,
|
||||
“Dedications”, or “History”, the requirement
|
||||
(section 4) to Preserve its Title (section 1) will typically require
|
||||
changing the actual title.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section9" renderas="sect2">
|
||||
9. TERMINATION
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
You may not copy, modify, sublicense, or distribute the Document except as
|
||||
expressly provided under this License. Any attempt otherwise to copy,
|
||||
modify, sublicense, or distribute it is void, and will automatically
|
||||
terminate your rights under this License.
|
||||
</simpara>
|
||||
<simpara>
|
||||
However, if you cease all violation of this License, then your license
|
||||
from a particular copyright holder is reinstated (a) provisionally, unless
|
||||
and until the copyright holder explicitly and finally terminates your
|
||||
license, and (b) permanently, if the copyright holder fails to notify you
|
||||
of the violation by some reasonable means prior to 60 days after the
|
||||
cessation.
|
||||
</simpara>
|
||||
<simpara>
|
||||
Moreover, your license from a particular copyright holder is reinstated
|
||||
permanently if the copyright holder notifies you of the violation by some
|
||||
reasonable means, this is the first time you have received notice of
|
||||
violation of this License (for any work) from that copyright holder, and
|
||||
you cure the violation prior to 30 days after your receipt of the notice.
|
||||
</simpara>
|
||||
<simpara>
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under this
|
||||
License. If your rights have been terminated and not permanently
|
||||
reinstated, receipt of a copy of some or all of the same material does not
|
||||
give you any rights to use it.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section10" renderas="sect2">
|
||||
10. FUTURE REVISIONS OF THIS LICENSE
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
The Free Software Foundation may publish new, revised versions of the GNU
|
||||
Free Documentation License from time to time. Such new versions will be
|
||||
similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns. See
|
||||
<ulink url="http://www.gnu.org/copyleft/">Copyleft</ulink>.
|
||||
</simpara>
|
||||
<simpara>
|
||||
Each version of the License is given a distinguishing version number. If
|
||||
the Document specifies that a particular numbered version of this License
|
||||
“or any later version” applies to it, you have the option of
|
||||
following the terms and conditions either of that specified version or of
|
||||
any later version that has been published (not as a draft) by the Free
|
||||
Software Foundation. If the Document does not specify a version number of
|
||||
this License, you may choose any version ever published (not as a draft)
|
||||
by the Free Software Foundation. If the Document specifies that a proxy
|
||||
can decide which future versions of this License can be used, that
|
||||
proxy’s public statement of acceptance of a version permanently
|
||||
authorizes you to choose that version for the Document.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-section11" renderas="sect2">
|
||||
11. RELICENSING
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
“Massive Multiauthor Collaboration Site” (or “MMC
|
||||
Site”) means any World Wide Web server that publishes copyrightable
|
||||
works and also provides prominent facilities for anybody to edit those
|
||||
works. A public wiki that anybody can edit is an example of such a
|
||||
server. A “Massive Multiauthor Collaboration” (or
|
||||
“MMC”) contained in the site means any set of copyrightable
|
||||
works thus published on the MMC site.
|
||||
</simpara>
|
||||
<simpara>
|
||||
“CC-BY-SA” means the Creative Commons Attribution-Share Alike
|
||||
3.0 license published by Creative Commons Corporation, a not-for-profit
|
||||
corporation with a principal place of business in San Francisco,
|
||||
California, as well as future copyleft versions of that license published
|
||||
by that same organization.
|
||||
</simpara>
|
||||
<simpara>
|
||||
“Incorporate” means to publish or republish a Document, in
|
||||
whole or in part, as part of another Document.
|
||||
</simpara>
|
||||
<simpara>
|
||||
An MMC is “eligible for relicensing” if it is licensed under
|
||||
this License, and if all works that were first published under this
|
||||
License somewhere other than this MMC, and subsequently incorporated in
|
||||
whole or in part into the MMC, (1) had no cover texts or invariant
|
||||
sections, and (2) were thus incorporated prior to November 1, 2008.
|
||||
</simpara>
|
||||
<simpara>
|
||||
The operator of an MMC Site may republish an MMC contained in the site
|
||||
under CC-BY-SA on the same site at any time before August 1, 2009,
|
||||
provided the MMC is eligible for relicensing.
|
||||
</simpara>
|
||||
<bridgehead id="fdl-1-addendum" renderas="sect2">
|
||||
ADDENDUM: How to use this License for your documents
|
||||
</bridgehead>
|
||||
<simpara>
|
||||
To use this License in a document you have written, include a copy of the
|
||||
License in the document and put the following copyright and license
|
||||
notices just after the title page:
|
||||
</simpara>
|
||||
<screen>Copyright © YEAR YOUR NAME
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document under the
|
||||
terms of the GNU Free Documentation License, Version 1.3 or any later version
|
||||
published by the Free Software Foundation; with no Invariant Sections, no
|
||||
Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in
|
||||
the section entitled “GNU Free Documentation License”.</screen>
|
||||
<simpara>
|
||||
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
|
||||
replace the “with… Texts.” line with this:
|
||||
</simpara>
|
||||
<screen>with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts
|
||||
being LIST, and with the Back-Cover Texts being LIST.</screen>
|
||||
<simpara>
|
||||
If you have Invariant Sections without Cover Texts, or some other
|
||||
combination of the three, merge those two alternatives to suit the
|
||||
situation.
|
||||
</simpara>
|
||||
<simpara>
|
||||
If your document contains nontrivial examples of program code, we
|
||||
recommend releasing these examples in parallel under your choice of free
|
||||
software license, such as the GNU General Public License, to permit their
|
||||
use in free software.
|
||||
</simpara>
|
||||
</appendix>
|
||||
|
|
@ -166,8 +166,8 @@ requirements of the license of GCC.
|
|||
The documentation shipped with the library and made available over
|
||||
the web, excluding the pages generated from source comments, are
|
||||
copyrighted by the Free Software Foundation, and placed under the
|
||||
<link linkend="appendix.gfdl-1.2"> GNU Free Documentation
|
||||
License version 1.2</link>. There are no Front-Cover Texts, no
|
||||
<link linkend="appendix.gfdl-1.3"> GNU Free Documentation
|
||||
License version 1.3</link>. There are no Front-Cover Texts, no
|
||||
Back-Cover Texts, and no Invariant Sections.
|
||||
</para>
|
||||
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@
|
|||
|
||||
<!-- Appendix E -->
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
parse="xml" href="../gnu/fdl-1.2.xml">
|
||||
parse="xml" href="../gnu/fdl-1.3.xml">
|
||||
</xi:include>
|
||||
|
||||
</part>
|
||||
|
|
|
|||
Loading…
Reference in New Issue