intro.xml: Escape '&', validate.
2009-07-20 Benjamin Kosnik <bkoz@redhat.com> * doc/xml/manual/intro.xml: Escape '&', validate. * doc/xml/manual/using.xml: Validate, dead link check. * doc/xml/manual/strings.xml: Same. * doc/xml/manual/appendix_contributing.xml: Same. * doc/xml/manual/iterators.xml: Same. * doc/xml/manual/spine.xml: Same. * doc/xml/faq.xml: Remove redundant xreflabel entities. * doc/xml/gnu/gpl-3.0.xml: Same. * doc/xml/manual/mt_allocator.xml: Same. * doc/xml/manual/allocator.xml: Same. * doc/xml/manual/ctype.xml: Same. * doc/xml/manual/codecvt.xml: Same. * doc/xml/manual/backwards_compatibility.xml: Same. * doc/xml/manual/shared_ptr.xml: Same. * doc/xml/manual/abi.xml: Same. * doc/xml/manual/auto_ptr.xml: Same. * doc/xml/manual/internals.xml: Same. * doc/xml/manual/parallel_mode.xml: Same. * doc/xml/manual/bitmap_allocator.xml: Same. * doc/xml/manual/build_hacking.xml: Same. * doc/xml/manual/evolution.xml: Same. * doc/xml/manual/debug.xml: Same. * doc/xml/manual/localization.xml: Same. * doc/xml/manual/appendix_contributing.xml: Same. * doc/xml/manual/locale.xml: Same. * doc/xml/manual/messages.xml: Same. * doc/xml/manual/spine.xml: Same. * doc/xml/manual/test.xml: Same. * doc/xml/book.txml: Same. * doc/xml/spine.xml: Same. * doc/html: Regenerate. From-SVN: r149835
This commit is contained in:
parent
d48e9ceac9
commit
47f6d7acfb
@ -7,6 +7,31 @@
|
||||
* doc/xml/manual/iterators.xml: Same.
|
||||
* doc/xml/manual/spine.xml: Same.
|
||||
|
||||
* doc/xml/faq.xml: Remove redundant xreflabel entities.
|
||||
* doc/xml/gnu/gpl-3.0.xml: Same.
|
||||
* doc/xml/manual/mt_allocator.xml: Same.
|
||||
* doc/xml/manual/allocator.xml: Same.
|
||||
* doc/xml/manual/ctype.xml: Same.
|
||||
* doc/xml/manual/codecvt.xml: Same.
|
||||
* doc/xml/manual/backwards_compatibility.xml: Same.
|
||||
* doc/xml/manual/shared_ptr.xml: Same.
|
||||
* doc/xml/manual/abi.xml: Same.
|
||||
* doc/xml/manual/auto_ptr.xml: Same.
|
||||
* doc/xml/manual/internals.xml: Same.
|
||||
* doc/xml/manual/parallel_mode.xml: Same.
|
||||
* doc/xml/manual/bitmap_allocator.xml: Same.
|
||||
* doc/xml/manual/build_hacking.xml: Same.
|
||||
* doc/xml/manual/evolution.xml: Same.
|
||||
* doc/xml/manual/debug.xml: Same.
|
||||
* doc/xml/manual/localization.xml: Same.
|
||||
* doc/xml/manual/appendix_contributing.xml: Same.
|
||||
* doc/xml/manual/locale.xml: Same.
|
||||
* doc/xml/manual/messages.xml: Same.
|
||||
* doc/xml/manual/spine.xml: Same.
|
||||
* doc/xml/manual/test.xml: Same.
|
||||
* doc/xml/book.txml: Same.
|
||||
* doc/xml/spine.xml: Same.
|
||||
|
||||
* doc/html: Regenerate.
|
||||
|
||||
2009-07-18 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
<a class="ulink" href="http://www.fsf.org/" target="_top">FSF
|
||||
</a>
|
||||
</p></div><div><div class="legalnotice"><a id="id447876"></a><p>
|
||||
</p></div><div><div class="legalnotice"><a id="id536546"></a><p>
|
||||
<a class="ulink" href="17_intro/license.html" target="_top">License
|
||||
</a>
|
||||
</p></div></div></div><hr /></div><p>
|
||||
|
@ -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>Frequently Asked Questions</title><meta name="generator" content="DocBook XSL Stylesheets V1.74.3" /><link rel="home" href="spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="bk03.html" title="" /><link rel="prev" href="bk03.html" title="" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Frequently Asked Questions</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bk03.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> </td></tr></table><hr /></div><div class="article" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="faq"></a>Frequently Asked Questions</h2></div><div><p class="copyright">Copyright ©
|
||||
2008
|
||||
|
||||
<a class="ulink" href="http://fsf.org" target="_top">FSF</a>
|
||||
<a class="ulink" href="http://www.fsf.org" target="_top">FSF</a>
|
||||
</p></div></div><hr /></div><div class="qandaset"><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">
|
||||
|
@ -464,54 +464,54 @@ 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"><div class="titlepage"><div><div><h3 class="title"><a id="abi.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id526914"></a><p><span class="title"><i>
|
||||
</p></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="abi.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id669361"></a><p><span class="title"><i>
|
||||
ABIcheck, a vague idea of checking ABI compatibility
|
||||
</i>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://abicheck.sourceforge.net/" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id526932"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669379"></a><p><span class="title"><i>
|
||||
C++ ABI Reference
|
||||
</i>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.codesourcery.com/cxx-abi" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id526949"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669396"></a><p><span class="title"><i>
|
||||
Intel® Compilers for Linux* -Compatibility with the GNU Compilers
|
||||
</i>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://developer.intel.com/software/products/compilers/techtopics/LinuxCompilersCompatibility.htm" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id526967"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669414"></a><p><span class="title"><i>
|
||||
Intel® Compilers for Linux* -Compatibility with the GNU Compilers
|
||||
</i>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://developer.intel.com/software/products/compilers/techtopics/LinuxCompilersCompatibility.htm" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id526984"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669431"></a><p><span class="title"><i>
|
||||
Sun Solaris 2.9 : Linker and Libraries Guide (document 816-1386)
|
||||
</i>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://docs.sun.com/?p=/doc/816-1386&a=load" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id527001"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669448"></a><p><span class="title"><i>
|
||||
Sun Solaris 2.9 : C++ Migration Guide (document 816-2459)
|
||||
</i>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://docs.sun.com/db/prod/solaris.9" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id527019"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669466"></a><p><span class="title"><i>
|
||||
ELF Symbol Versioning
|
||||
</i>. </span><span class="author"><span class="firstname">Ulrich</span> <span class="surname">Drepper</span>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://people.redhat.com/drepper/symbol-versioning" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id527047"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669494"></a><p><span class="title"><i>
|
||||
C++ ABI for the ARM Architecture
|
||||
</i>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.arm.com/miscPDFs/8033.pdf" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id527064"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669511"></a><p><span class="title"><i>
|
||||
Dynamic Shared Objects: Survey and Issues
|
||||
</i>. </span><span class="subtitle">
|
||||
ISO C++ J16/06-0046
|
||||
. </span><span class="author"><span class="firstname">Benjamin</span> <span class="surname">Kosnik</span>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1976.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id488805"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id669543"></a><p><span class="title"><i>
|
||||
Versioning With Namespaces
|
||||
</i>. </span><span class="subtitle">
|
||||
ISO C++ J16/06-0083
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bk01pt08ch19s02.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt09pr02.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.algorithms"></a>Part IX.
|
||||
Algorithms
|
||||
<a id="id554695" class="indexterm"></a>
|
||||
<a id="id651984" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="preface"><a href="bk01pt09pr02.html"></a></span></dt><dt><span class="chapter"><a href="bk01pt09ch20.html">20. Mutating</a></span></dt><dd><dl><dt><span class="sect1"><a href="bk01pt09ch20.html#algorithms.mutating.swap">swap</a></span></dt><dd><dl><dt><span class="sect2"><a href="bk01pt09ch20.html#algorithms.swap.specializations">Specializations</a></span></dt></dl></dd></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bk01pt08ch19s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="bk01pt09pr02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">One Past the End </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></body></html>
|
||||
|
@ -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="id523957"></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="id688075"></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="id527280"></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="id672726"></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.
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bk01pt12ch40s03.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="source_organization.html">Next</a></td></tr></table><hr /></div><div class="appendix" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="appendix.contrib"></a>Appendix A.
|
||||
Contributing
|
||||
<a id="id526085" class="indexterm"></a>
|
||||
<a id="id672566" 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></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
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="backwards.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="appendix_gpl.html">Next</a></td></tr></table><hr /></div><div class="appendix" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="appendix.free"></a>Appendix C.
|
||||
Free Software Needs Free Documentation
|
||||
<a id="id534636" class="indexterm"></a>
|
||||
<a id="id682723" 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
|
||||
|
@ -8,7 +8,7 @@
|
||||
Version 3, 29 June 2007
|
||||
</p><p>
|
||||
Copyright © 2007 Free Software Foundation, Inc.
|
||||
<a class="ulink" href="http://fsf.org/" target="_top">http://fsf.org/</a>
|
||||
<a class="ulink" href="http://www.fsf.org/" target="_top">http://www.fsf.org/</a>
|
||||
</p><p>
|
||||
Everyone is permitted to copy and distribute verbatim copies of this license
|
||||
document, but changing it is not allowed.
|
||||
@ -76,7 +76,7 @@
|
||||
</p><p>
|
||||
The precise terms and conditions for copying, distribution and modification
|
||||
follow.
|
||||
</p><h2><a id="id590646"></a>
|
||||
</p><h2><a id="id687730"></a>
|
||||
TERMS AND CONDITIONS
|
||||
</h2><h2><a id="gpl-3-definitions"></a>
|
||||
0. Definitions.
|
||||
@ -617,7 +617,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="id534935"></a>
|
||||
</p><h2><a id="id533601"></a>
|
||||
END OF TERMS AND CONDITIONS
|
||||
</h2><h2><a id="HowToApply"></a>
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="source_design_notes.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="internals.html">Next</a></td></tr></table><hr /></div><div class="appendix" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="appendix.porting"></a>Appendix B.
|
||||
Porting and Maintenance
|
||||
<a id="id558722" class="indexterm"></a>
|
||||
<a id="id611702" 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_porting.html#appendix.porting.build_hacking">Configure and Build Hacking</a></span></dt><dd><dl><dt><span class="sect2"><a href="appendix_porting.html#build_hacking.prereq">Prerequisites</a></span></dt><dt><span class="sect2"><a href="appendix_porting.html#build_hacking.map">Overview: What Comes from Where</a></span></dt><dt><span class="sect2"><a href="appendix_porting.html#build_hacking.scripts">Storing Information in non-AC files (like configure.host)</a></span></dt><dt><span class="sect2"><a href="appendix_porting.html#build_hacking.conventions">Coding and Commenting Conventions</a></span></dt><dt><span class="sect2"><a href="appendix_porting.html#build_hacking.acinclude">The acinclude.m4 layout</a></span></dt><dt><span class="sect2"><a href="appendix_porting.html#build_hacking.enable">GLIBCXX_ENABLE, the --enable maker</a></span></dt></dl></dd><dt><span class="sect1"><a href="internals.html">Porting to New Hardware or Operating Systems</a></span></dt><dd><dl><dt><span class="sect2"><a href="internals.html#internals.os">Operating System</a></span></dt><dt><span class="sect2"><a href="internals.html#internals.cpu">CPU</a></span></dt><dt><span class="sect2"><a href="internals.html#internals.char_types">Character Types</a></span></dt><dt><span class="sect2"><a href="internals.html#internals.thread_safety">Thread Safety</a></span></dt><dt><span class="sect2"><a href="internals.html#internals.numeric_limits">Numeric Limits</a></span></dt><dt><span class="sect2"><a href="internals.html#internals.libtool">Libtool</a></span></dt></dl></dd><dt><span class="sect1"><a href="abi.html">ABI Policy and Guidelines</a></span></dt><dd><dl><dt><span class="sect2"><a href="abi.html#abi.cxx_interface">The C++ Interface</a></span></dt><dt><span class="sect2"><a href="abi.html#abi.versioning">Versioning</a></span></dt><dt><span class="sect2"><a href="abi.html#abi.changes_allowed">Allowed Changes</a></span></dt><dt><span class="sect2"><a href="abi.html#abi.changes_no">Prohibited Changes</a></span></dt><dt><span class="sect2"><a href="abi.html#abi.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="abi.html#abi.testing">Testing</a></span></dt><dt><span class="sect2"><a href="abi.html#abi.issues">Outstanding Issues</a></span></dt></dl></dd><dt><span class="sect1"><a href="api.html">API Evolution and Deprecation History</a></span></dt><dd><dl><dt><span class="sect2"><a href="api.html#api.rel_300">3.0</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_310">3.1</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_320">3.2</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_330">3.3</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_340">3.4</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_400">4.0</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_410">4.1</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_420">4.2</a></span></dt><dt><span class="sect2"><a href="api.html#api.rel_430">4.3</a></span></dt></dl></dd><dt><span class="sect1"><a href="backwards.html">Backwards Compatibility</a></span></dt><dd><dl><dt><span class="sect2"><a href="backwards.html#backwards.first">First</a></span></dt><dt><span class="sect2"><a href="backwards.html#backwards.second">Second</a></span></dt><dt><span class="sect2"><a href="backwards.html#backwards.third">Third</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="appendix.porting.build_hacking"></a>Configure and Build Hacking</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="build_hacking.prereq"></a>Prerequisites</h3></div></div></div><p>
|
||||
As noted <a class="ulink" href="http://gcc.gnu.org/install/prerequisites.html" target="_top">previously</a>,
|
||||
certain other tools are necessary for hacking on files that
|
||||
|
@ -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">obvious</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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id564241"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id564273"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id692357"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id692389"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id564374"></a>Namespace <code class="code">std::</code> not supported</h4></div></div></div><p>
|
||||
</p><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id692487"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id605630"></a>Illegal iterator usage</h4></div></div></div><p>
|
||||
</pre></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id692610"></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 type="disc"><li><p>
|
||||
@ -121,7 +121,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [
|
||||
</p></li><li><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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id605691"></a><code class="code">isspace</code> from <code class="filename">cctype</code> is a macro
|
||||
</p></li></ul></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id579067"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id605785"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id579160"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id605823"></a>No <code class="code">std::char_traits<char>::eof</code></h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id579198"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id605841"></a>No <code class="code">string::clear</code></h4></div></div></div><p>
|
||||
</pre></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id579216"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id605886"></a>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id579262"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id605905"></a>No <code class="code">basic_stringbuf</code>, <code class="code">basic_stringstream</code></h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id579281"></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="bk01pt05ch13s05.html" title="Shrink to Fit">this howto</a>.
|
||||
</p><p> There is additional information in the libstdc++-v2 info files, in
|
||||
particular “<span class="quote">info iostream</span>”.
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id486034"></a>Little or no wide character support</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id690448"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id486053"></a>No templatized iostreams</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id690467"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id486072"></a>Thread safety issues</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id690486"></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="ulink" href="../17_intro/DESIGN" target="_top">design document</a>.
|
||||
</p><p>Portability notes and known implementation limitations are as follows.</p><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id486191"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id690603"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id486273"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id690685"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id486376"></a>No <code class="code">ios::nocreate/ios::noreplace</code>.
|
||||
</pre></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id690788"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id534268"></a>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id682356"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id534331"></a>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id682420"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id534359"></a>
|
||||
</pre></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id682448"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id534403"></a>
|
||||
</pre></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id682492"></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,27 +899,27 @@ AC_DEFUN([AC_HEADER_UNORDERED_SET], [
|
||||
AC_DEFINE(HAVE_UNORDERED_SET,,[Define if unordered_set is present. ])
|
||||
fi
|
||||
])
|
||||
</pre></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id534480"></a>
|
||||
</pre></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id682569"></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"><div class="titlepage"><div><div><h3 class="title"><a id="backwards.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id534512"></a><p>[<abbr class="abbrev">
|
||||
</p></div></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="backwards.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id682598"></a><p>[<abbr class="abbrev">
|
||||
kegel41
|
||||
</abbr>] <span class="title"><i>
|
||||
Migrating to GCC 4.1
|
||||
</i>. </span><span class="author"><span class="firstname">Dan</span> <span class="surname">Kegel</span>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.kegel.com/gcc/gcc4.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id534544"></a><p>[<abbr class="abbrev">
|
||||
. </span></p></div><div class="biblioentry"><a id="id682631"></a><p>[<abbr class="abbrev">
|
||||
kegel41
|
||||
</abbr>] <span class="title"><i>
|
||||
Building the Whole Debian Archive with GCC 4.1: A Summary
|
||||
</i>. </span><span class="author"><span class="firstname">Martin</span> <span class="surname">Michlmayr</span>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://lists.debian.org/debian-gcc/2006/03/msg00405.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id534577"></a><p>[<abbr class="abbrev">
|
||||
. </span></p></div><div class="biblioentry"><a id="id682664"></a><p>[<abbr class="abbrev">
|
||||
lbl32
|
||||
</abbr>] <span class="title"><i>
|
||||
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="id518971"></a><p class="title"><b>Table 32.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="id673499"></a><p class="title"><b>Table 32.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
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?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>Index</title><meta name="generator" content="DocBook XSL Stylesheets V1.74.3" /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="spine.html" title="The GNU C++ Library" /><link rel="prev" href="appendix_gfdl.html" title="Appendix E. GNU Free Documentation License" /><link rel="next" href="../bk02.html" title="" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Index</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="appendix_gfdl.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="../bk02.html">Next</a></td></tr></table><hr /></div><div class="index"><div class="titlepage"><div><div><h2 class="title"><a id="id559505"></a>Index</h2></div></div></div><div class="index"><div class="indexdiv"><h3>A</h3><dl><dt>Algorithms, <a class="indexterm" href="algorithms.html">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Index</title><meta name="generator" content="DocBook XSL Stylesheets V1.74.3" /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="spine.html" title="The GNU C++ Library" /><link rel="prev" href="appendix_gfdl.html" title="Appendix E. GNU Free Documentation License" /><link rel="next" href="../bk02.html" title="" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Index</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="appendix_gfdl.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="../bk02.html">Next</a></td></tr></table><hr /></div><div class="index"><div class="titlepage"><div><div><h2 class="title"><a id="id622922"></a>Index</h2></div></div></div><div class="index"><div class="indexdiv"><h3>A</h3><dl><dt>Algorithms, <a class="indexterm" href="algorithms.html">
|
||||
Algorithms
|
||||
|
||||
</a></dt><dt>Appendix</dt><dd><dl><dt>Contributing, <a class="indexterm" href="appendix_contributing.html">
|
||||
|
@ -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.74.3" /><meta name="keywords" content=" ISO C++ , library " /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="support.html" title="Part II. Support" /><link rel="prev" href="support.html" title="Part II. Support" /><link rel="next" href="fundamental_types.html" title="Chapter 4. Types" /></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="support.html">Prev</a> </td><th width="60%" align="center">Part II.
|
||||
Support
|
||||
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="fundamental_types.html">Next</a></td></tr></table><hr /></div><div class="preface" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id487474"></a></h2></div></div></div><p>
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="fundamental_types.html">Next</a></td></tr></table><hr /></div><div class="preface" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id593044"></a></h2></div></div></div><p>
|
||||
This part deals with the functions called and objects created
|
||||
automatically during the course of a program's existence.
|
||||
</p><p>
|
||||
|
@ -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.74.3" /><meta name="keywords" content=" ISO C++ , library , algorithm " /><link rel="home" href="../spine.html" title="The GNU C++ Library Documentation" /><link rel="up" href="algorithms.html" title="Part IX. Algorithms" /><link rel="prev" href="algorithms.html" title="Part IX. Algorithms" /><link rel="next" href="bk01pt09ch20.html" title="Chapter 20. Mutating" /></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="algorithms.html">Prev</a> </td><th width="60%" align="center">Part IX.
|
||||
Algorithms
|
||||
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt09ch20.html">Next</a></td></tr></table><hr /></div><div class="preface" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id554703"></a></h2></div></div></div><p>
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt09ch20.html">Next</a></td></tr></table><hr /></div><div class="preface" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id651992"></a></h2></div></div></div><p>
|
||||
The neatest accomplishment of the algorithms chapter is that all the
|
||||
work is done via iterators, not containers directly. This means two
|
||||
important things:
|
||||
|
@ -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="id493443"></a><p class="title"><b>Table 30.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" /><col /><col /></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><td class="auto-generated"> </td><td class="auto-generated"> </td></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">bitset</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">deque</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">list</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">string</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">string</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">string</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">vector</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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="id594482"></a><p class="title"><b>Table 30.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" /><col /><col /></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><td class="auto-generated"> </td><td class="auto-generated"> </td></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">bitset</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">deque</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">list</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">string</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">string</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">string</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">vector</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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="id500939"></a><p class="title"><b>Table 30.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" /><col /><col /></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><td class="auto-generated"> </td><td class="auto-generated"> </td></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">unordered_map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">unordered_map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">unordered_set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">unordered_set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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="bk01pt12ch30s02.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="bk01pt12ch30s04.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="id532544"></a><p class="title"><b>Table 30.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" /><col /><col /></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><td class="auto-generated"> </td><td class="auto-generated"> </td></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">unordered_map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">unordered_map</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">unordered_set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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">unordered_set</code></td><td class="auto-generated"> </td><td class="auto-generated"> </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="bk01pt12ch30s02.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="bk01pt12ch30s04.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
@ -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.74.3" /><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 XII. Extensions" /><link rel="prev" href="extensions.html" title="Part XII. Extensions" /><link rel="next" href="ext_compile_checks.html" title="Chapter 29. 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 XII.
|
||||
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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id525017"></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" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id587260"></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.
|
||||
|
@ -337,41 +337,41 @@ codecvt usage.
|
||||
</p></li><li><p>
|
||||
wchar_t/char internal buffers and conversions between
|
||||
internal/external buffers?
|
||||
</p></li></ul></div></li></ul></div></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="facet.codecvt.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id508202"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></li></ul></div></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="facet.codecvt.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id561267"></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"><a id="id562637"></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"><a id="id581810"></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"><a id="id562665"></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"><a id="id583077"></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"><a id="id609240"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry"><a id="id583095"></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="id609258"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id569497"></a><p><span class="title"><i>
|
||||
System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x)
|
||||
</i>. </span><span class="copyright">Copyright © 1999
|
||||
The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opennc.org/austin/docreg.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id578333"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id569524"></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"><a id="id578468"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id652342"></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="id496659"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id623943"></a><p><span class="title"><i>
|
||||
A brief description of Normative Addendum 1
|
||||
</i>. </span><span class="author"><span class="firstname">Clive</span> <span class="surname">Feather</span>. </span><span class="pagenums">Extended Character Sets. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.lysator.liu.se/c/na1.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id506223"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id623975"></a><p><span class="title"><i>
|
||||
The Unicode HOWTO
|
||||
</i>. </span><span class="author"><span class="firstname">Bruno</span> <span class="surname">Haible</span>. </span><span class="biblioid">
|
||||
<a class="ulink" href="ftp://ftp.ilog.fr/pub/Users/haible/utf8/Unicode-HOWTO.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id506251"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id572236"></a><p><span class="title"><i>
|
||||
UTF-8 and Unicode FAQ for Unix/Linux
|
||||
</i>. </span><span class="author"><span class="firstname">Markus</span> <span class="surname">Khun</span>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.cl.cam.ac.uk/~mgk25/unicode.html" target="_top">
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="messages.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="sequences.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.containers"></a>Part VII.
|
||||
Containers
|
||||
<a id="id556339" class="indexterm"></a>
|
||||
<a id="id647817" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="sequences.html">16. Sequences</a></span></dt><dd><dl><dt><span class="sect1"><a href="sequences.html#containers.sequences.list">list</a></span></dt><dd><dl><dt><span class="sect2"><a href="sequences.html#sequences.list.size">list::size() is O(n)</a></span></dt></dl></dd><dt><span class="sect1"><a href="vector.html">vector</a></span></dt><dd><dl><dt><span class="sect2"><a href="vector.html#sequences.vector.management">Space Overhead Management</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="associative.html">17. Associative</a></span></dt><dd><dl><dt><span class="sect1"><a href="associative.html#containers.associative.insert_hints">Insertion Hints</a></span></dt><dt><span class="sect1"><a href="bitset.html">bitset</a></span></dt><dd><dl><dt><span class="sect2"><a href="bitset.html#associative.bitset.size_variable">Size Variable</a></span></dt><dt><span class="sect2"><a href="bitset.html#associative.bitset.type_string">Type String</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="containers_and_c.html">18. Interacting with C</a></span></dt><dd><dl><dt><span class="sect1"><a href="containers_and_c.html#containers.c.vs_array">Containers vs. Arrays</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="messages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sequences.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">messages </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 16. Sequences</td></tr></table></div></body></html>
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="verbose_termination.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="exceptions.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.diagnostics"></a>Part III.
|
||||
Diagnostics
|
||||
<a id="id520436" class="indexterm"></a>
|
||||
<a id="id639425" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="exceptions.html">7. Exceptions</a></span></dt><dd><dl><dt><span class="sect1"><a href="exceptions.html#manual.diagnostics.exceptions.hierarchy">Exception Classes</a></span></dt><dt><span class="sect1"><a href="bk01pt03ch07s02.html">Adding Data to Exceptions</a></span></dt><dt><span class="sect1"><a href="bk01pt03ch07s03.html">Cancellation</a></span></dt></dl></dd><dt><span class="chapter"><a href="bk01pt03ch08.html">8. Concept Checking</a></span></dt></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="verbose_termination.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="exceptions.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Verbose Terminate Handler </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 7. Exceptions</td></tr></table></div></body></html>
|
||||
|
@ -211,11 +211,11 @@ Complete details on Docbook markup can be found in the DocBook Element
|
||||
Reference, <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="id591330"></a><p class="title"><b>Table A.1. 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">XML</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="id563226"></a><p class="title"><b>Table A.1. 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">XML</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="id517117"></a><p class="title"><b>Table A.2. 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="id677436"></a><p class="title"><b>Table A.2. 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>Chapter 15. Facets aka Categories</title><meta name="generator" content="DocBook XSL Stylesheets V1.74.3" /><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="Part VI. Localization" /><link rel="prev" href="locales.html" title="Chapter 14. Locales" /><link rel="next" href="codecvt.html" title="codecvt" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 15. Facets aka Categories</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="locales.html">Prev</a> </td><th width="60%" align="center">Part VI.
|
||||
Localization
|
||||
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="codecvt.html">Next</a></td></tr></table><hr /></div><div class="chapter" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="manual.localization.facet"></a>Chapter 15. Facets aka Categories</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="facets.html#manual.localization.facet.ctype">ctype</a></span></dt><dd><dl><dt><span class="sect2"><a href="facets.html#facet.ctype.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="facets.html#facet.ctype.future">Future</a></span></dt></dl></dd><dt><span class="sect1"><a href="codecvt.html">codecvt</a></span></dt><dd><dl><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.req">Requirements</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.design">Design</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.use">Use</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.future">Future</a></span></dt></dl></dd><dt><span class="sect1"><a href="messages.html">messages</a></span></dt><dd><dl><dt><span class="sect2"><a href="messages.html#facet.messages.req">Requirements</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.design">Design</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.use">Use</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.future">Future</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="manual.localization.facet.ctype"></a>ctype</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="facet.ctype.impl"></a>Implementation</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id588333"></a>Specializations</h4></div></div></div><p>
|
||||
</th><td width="20%" align="right"> <a accesskey="n" href="codecvt.html">Next</a></td></tr></table><hr /></div><div class="chapter" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="manual.localization.facet"></a>Chapter 15. Facets aka Categories</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="facets.html#manual.localization.facet.ctype">ctype</a></span></dt><dd><dl><dt><span class="sect2"><a href="facets.html#facet.ctype.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="facets.html#facet.ctype.future">Future</a></span></dt></dl></dd><dt><span class="sect1"><a href="codecvt.html">codecvt</a></span></dt><dd><dl><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.req">Requirements</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.design">Design</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.use">Use</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.future">Future</a></span></dt></dl></dd><dt><span class="sect1"><a href="messages.html">messages</a></span></dt><dd><dl><dt><span class="sect2"><a href="messages.html#facet.messages.req">Requirements</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.design">Design</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.use">Use</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.future">Future</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="manual.localization.facet.ctype"></a>ctype</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="facet.ctype.impl"></a>Implementation</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id577250"></a>Specializations</h4></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,25 +50,25 @@ characters.
|
||||
</p></li><li><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"><div class="titlepage"><div><div><h3 class="title"><a id="facet.ctype.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id505327"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="facet.ctype.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id596298"></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"><a id="id573590"></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"><a id="id657031"></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"><a id="id573618"></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"><a id="id646518"></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"><a id="id509026"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry"><a id="id646537"></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="id509045"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id587314"></a><p><span class="title"><i>
|
||||
System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x)
|
||||
</i>. </span><span class="copyright">Copyright © 1999
|
||||
The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opennc.org/austin/docreg.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id492383"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id578920"></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"><a id="id584625"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id655466"></a><p><span class="title"><i>
|
||||
Standard C++ IOStreams and Locales
|
||||
</i>. </span><span class="subtitle">
|
||||
Advanced Programmer's Guide and Reference
|
||||
|
File diff suppressed because one or more lines are too long
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bk01pt10ch23s02.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="iostream_objects.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.io"></a>Part XI.
|
||||
Input and Output
|
||||
<a id="id594202" class="indexterm"></a>
|
||||
<a id="id636399" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="iostream_objects.html">24. Iostream Objects</a></span></dt><dt><span class="chapter"><a href="streambufs.html">25. Stream Buffers</a></span></dt><dd><dl><dt><span class="sect1"><a href="streambufs.html#io.streambuf.derived">Derived streambuf Classes</a></span></dt><dt><span class="sect1"><a href="bk01pt11ch25s02.html">Buffering</a></span></dt></dl></dd><dt><span class="chapter"><a href="stringstreams.html">26. Memory Based Streams</a></span></dt><dd><dl><dt><span class="sect1"><a href="stringstreams.html#manual.io.memstreams.compat">Compatibility With strstream</a></span></dt></dl></dd><dt><span class="chapter"><a href="fstreams.html">27. File Based Streams</a></span></dt><dd><dl><dt><span class="sect1"><a href="fstreams.html#manual.io.filestreams.copying_a_file">Copying a File</a></span></dt><dt><span class="sect1"><a href="bk01pt11ch27s02.html">Binary Input and Output</a></span></dt><dt><span class="sect1"><a href="bk01pt11ch27s03.html">More Binary Input and Output</a></span></dt></dl></dd><dt><span class="chapter"><a href="io_and_c.html">28. Interacting with C</a></span></dt><dd><dl><dt><span class="sect1"><a href="io_and_c.html#manual.io.c.FILE">Using FILE* and file descriptors</a></span></dt><dt><span class="sect1"><a href="bk01pt11ch28s02.html">Performance</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bk01pt10ch23s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="iostream_objects.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">C99 </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 24. Iostream Objects</td></tr></table></div></body></html>
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bitset.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt08ch19.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.iterators"></a>Part VIII.
|
||||
Iterators
|
||||
<a id="id515196" class="indexterm"></a>
|
||||
<a id="id627922" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="bk01pt08ch19.html">19. Predefined</a></span></dt><dd><dl><dt><span class="sect1"><a href="bk01pt08ch19.html#iterators.predefined.vs_pointers">Iterators vs. Pointers</a></span></dt><dt><span class="sect1"><a href="bk01pt08ch19s02.html">One Past the End</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bitset.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="bk01pt08ch19.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">bitset </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 19. Predefined</td></tr></table></div></body></html>
|
||||
|
@ -398,25 +398,25 @@ 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"><div class="titlepage"><div><div><h3 class="title"><a id="locales.locale.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id593773"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="locales.locale.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id648584"></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"><a id="id511390"></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"><a id="id600517"></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"><a id="id547983"></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"><a id="id661769"></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"><a id="id548001"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry"><a id="id581598"></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="id504596"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id581617"></a><p><span class="title"><i>
|
||||
System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x)
|
||||
</i>. </span><span class="copyright">Copyright © 1999
|
||||
The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opennc.org/austin/docreg.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id504623"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id691070"></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"><a id="id494383"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id627830"></a><p><span class="title"><i>
|
||||
Standard C++ IOStreams and Locales
|
||||
</i>. </span><span class="subtitle">
|
||||
Advanced Programmer's Guide and Reference
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bk01pt05ch13s06.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="locales.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.localization"></a>Part VI.
|
||||
Localization
|
||||
<a id="id569807" class="indexterm"></a>
|
||||
<a id="id585155" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="locales.html">14. Locales</a></span></dt><dd><dl><dt><span class="sect1"><a href="locales.html#manual.localization.locales.locale">locale</a></span></dt><dd><dl><dt><span class="sect2"><a href="locales.html#locales.locale.req">Requirements</a></span></dt><dt><span class="sect2"><a href="locales.html#locales.locale.design">Design</a></span></dt><dt><span class="sect2"><a href="locales.html#locales.locale.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="locales.html#locales.locale.future">Future</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="facets.html">15. Facets aka Categories</a></span></dt><dd><dl><dt><span class="sect1"><a href="facets.html#manual.localization.facet.ctype">ctype</a></span></dt><dd><dl><dt><span class="sect2"><a href="facets.html#facet.ctype.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="facets.html#facet.ctype.future">Future</a></span></dt></dl></dd><dt><span class="sect1"><a href="codecvt.html">codecvt</a></span></dt><dd><dl><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.req">Requirements</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.design">Design</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.use">Use</a></span></dt><dt><span class="sect2"><a href="codecvt.html#facet.codecvt.future">Future</a></span></dt></dl></dd><dt><span class="sect1"><a href="messages.html">messages</a></span></dt><dd><dl><dt><span class="sect2"><a href="messages.html#facet.messages.req">Requirements</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.design">Design</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.use">Use</a></span></dt><dt><span class="sect2"><a href="messages.html#facet.messages.future">Future</a></span></dt></dl></dd></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bk01pt05ch13s06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="locales.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">CString (MFC) </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 14. Locales</td></tr></table></div></body></html>
|
||||
|
@ -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="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="allocator.impl"></a>Implementation</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id509655"></a>Interface Design</h4></div></div></div><p>
|
||||
</p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="allocator.impl"></a>Implementation</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id633557"></a>Interface Design</h4></div></div></div><p>
|
||||
The only allocator interface that
|
||||
is support 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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id520182"></a>Selecting Default Allocation Policy</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id626388"></a>Selecting Default Allocation Policy</h4></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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id509449"></a>Disabling Memory Caching</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id624026"></a>Disabling Memory Caching</h4></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"><div class="titlepage"><div><div><h3 class="title"><a id="allocator.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id554138"></a><p><span class="title"><i>
|
||||
</p></li></ol></div></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="allocator.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id568501"></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="id554153"></a><p><span class="title"><i>The Standard Librarian: What Are Allocators Good
|
||||
<span class="pagenums">20.4 Memory. </span></p></div><div class="biblioentry"><a id="id568516"></a><p><span class="title"><i>The Standard Librarian: What Are Allocators Good
|
||||
</i>. </span>
|
||||
austernm
|
||||
<span class="author"><span class="firstname">Matt</span> <span class="surname">Austern</span>. </span><span class="publisher"><span class="publishername">
|
||||
@ -320,28 +320,28 @@
|
||||
. </span></span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.cuj.com/documents/s=8000/cujcexp1812austern/" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id513013"></a><p><span class="title"><i>The Hoard Memory Allocator</i>. </span>
|
||||
. </span></p></div><div class="biblioentry"><a id="id588405"></a><p><span class="title"><i>The Hoard Memory Allocator</i>. </span>
|
||||
emeryb
|
||||
<span class="author"><span class="firstname">Emery</span> <span class="surname">Berger</span>. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.cs.umass.edu/~emery/hoard/" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id576655"></a><p><span class="title"><i>Reconsidering Custom Memory Allocation</i>. </span>
|
||||
. </span></p></div><div class="biblioentry"><a id="id571454"></a><p><span class="title"><i>Reconsidering Custom Memory Allocation</i>. </span>
|
||||
bergerzorn
|
||||
<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><span class="biblioid">
|
||||
<a class="ulink" href="http://www.cs.umass.edu/~emery/pubs/berger-oopsla2002.pdf" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id550364"></a><p><span class="title"><i>Allocator Types</i>. </span>
|
||||
. </span></p></div><div class="biblioentry"><a id="id564653"></a><p><span class="title"><i>Allocator Types</i>. </span>
|
||||
kreftlanger
|
||||
<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><span class="biblioid">
|
||||
<a class="ulink" href="http://www.langer.camelot.de/Articles/C++Report/Allocators/Allocators.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id436269"></a><p><span class="title"><i>The C++ Programming Language</i>. </span>
|
||||
. </span></p></div><div class="biblioentry"><a id="id591165"></a><p><span class="title"><i>The C++ Programming Language</i>. </span>
|
||||
tcpl
|
||||
<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"><a id="id509179"></a><p><span class="title"><i>Yalloc: A Recycling C++ Allocator</i>. </span>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id655332"></a><p><span class="title"><i>Yalloc: A Recycling C++ Allocator</i>. </span>
|
||||
yenf
|
||||
<span class="author"><span class="firstname">Felix</span> <span class="surname">Yen</span>. </span><span class="copyright">Copyright © . </span><span class="biblioid">
|
||||
<a class="ulink" href="http://home.earthlink.net/~brimar/yalloc/" target="_top">
|
||||
|
@ -241,38 +241,38 @@ 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"><div class="titlepage"><div><div><h3 class="title"><a id="facet.messages.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id508892"></a><p><span class="title"><i>
|
||||
</p></li></ul></div></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="facet.messages.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id646594"></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"><a id="id529085"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id638143"></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"><a id="id521320"></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"><a id="id584787"></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"><a id="id521338"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1998 ISO. </span></p></div><div class="biblioentry"><a id="id584805"></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="id521356"></a><p><span class="title"><i>
|
||||
</i>. </span><span class="copyright">Copyright © 1999 ISO. </span></p></div><div class="biblioentry"><a id="id591207"></a><p><span class="title"><i>
|
||||
System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x)
|
||||
</i>. </span><span class="copyright">Copyright © 1999
|
||||
The Open Group/The Institute of Electrical and Electronics Engineers, Inc.. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.opennc.org/austin/docreg.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id572651"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id591234"></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"><a id="id515967"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id571280"></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="id498130"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id653122"></a><p><span class="title"><i>
|
||||
Java 2 Platform, Standard Edition, v 1.3.1 API Specification
|
||||
</i>. </span><span class="pagenums">java.util.Properties, java.text.MessageFormat,
|
||||
java.util.Locale, java.util.ResourceBundle. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://java.sun.com/j2se/1.3/docs/api" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id521918"></a><p><span class="title"><i>
|
||||
. </span></p></div><div class="biblioentry"><a id="id590266"></a><p><span class="title"><i>
|
||||
GNU gettext tools, version 0.10.38, Native Language Support
|
||||
Library and Tools.
|
||||
</i>. </span><span class="biblioid">
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bk01pt09ch20.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="complex.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.numerics"></a>Part X.
|
||||
Numerics
|
||||
<a id="id487160" class="indexterm"></a>
|
||||
<a id="id652987" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="complex.html">21. Complex</a></span></dt><dd><dl><dt><span class="sect1"><a href="complex.html#numerics.complex.processing">complex Processing</a></span></dt></dl></dd><dt><span class="chapter"><a href="generalized_numeric_operations.html">22. Generalized Operations</a></span></dt><dt><span class="chapter"><a href="numerics_and_c.html">23. Interacting with C</a></span></dt><dd><dl><dt><span class="sect1"><a href="numerics_and_c.html#numerics.c.array">Numerics vs. Arrays</a></span></dt><dt><span class="sect1"><a href="bk01pt10ch23s02.html">C99</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bk01pt09ch20.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="complex.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 20. Mutating </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 21. Complex</td></tr></table></div></body></html>
|
||||
|
@ -13,11 +13,11 @@ explicit source declaration or by compiling existing sources with a
|
||||
specific compiler flag.
|
||||
</p><div class="sect1" lang="en" xml:lang="en"><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 type="disc"><li><p><code class="function">std::accumulate</code></p></li><li><p><code class="function">std::adjacent_difference</code></p></li><li><p><code class="function">std::inner_product</code></p></li><li><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 type="disc"><li><p><code class="function">std::adjacent_find</code></p></li><li><p><code class="function">std::count</code></p></li><li><p><code class="function">std::count_if</code></p></li><li><p><code class="function">std::equal</code></p></li><li><p><code class="function">std::find</code></p></li><li><p><code class="function">std::find_if</code></p></li><li><p><code class="function">std::find_first_of</code></p></li><li><p><code class="function">std::for_each</code></p></li><li><p><code class="function">std::generate</code></p></li><li><p><code class="function">std::generate_n</code></p></li><li><p><code class="function">std::lexicographical_compare</code></p></li><li><p><code class="function">std::mismatch</code></p></li><li><p><code class="function">std::search</code></p></li><li><p><code class="function">std::search_n</code></p></li><li><p><code class="function">std::transform</code></p></li><li><p><code class="function">std::replace</code></p></li><li><p><code class="function">std::replace_if</code></p></li><li><p><code class="function">std::max_element</code></p></li><li><p><code class="function">std::merge</code></p></li><li><p><code class="function">std::min_element</code></p></li><li><p><code class="function">std::nth_element</code></p></li><li><p><code class="function">std::partial_sort</code></p></li><li><p><code class="function">std::partition</code></p></li><li><p><code class="function">std::random_shuffle</code></p></li><li><p><code class="function">std::set_union</code></p></li><li><p><code class="function">std::set_intersection</code></p></li><li><p><code class="function">std::set_symmetric_difference</code></p></li><li><p><code class="function">std::set_difference</code></p></li><li><p><code class="function">std::sort</code></p></li><li><p><code class="function">std::stable_sort</code></p></li><li><p><code class="function">std::unique_copy</code></p></li></ul></div></div><div class="bibliography"><div class="titlepage"><div><div><h2 class="title"><a id="parallel_mode.biblio"></a>Bibliography</h2></div></div></div><div class="biblioentry"><a id="id510082"></a><p><span class="title"><i>
|
||||
<code class="filename">algorithm</code> are included in the parallel mode:</p><div class="itemizedlist"><ul type="disc"><li><p><code class="function">std::adjacent_find</code></p></li><li><p><code class="function">std::count</code></p></li><li><p><code class="function">std::count_if</code></p></li><li><p><code class="function">std::equal</code></p></li><li><p><code class="function">std::find</code></p></li><li><p><code class="function">std::find_if</code></p></li><li><p><code class="function">std::find_first_of</code></p></li><li><p><code class="function">std::for_each</code></p></li><li><p><code class="function">std::generate</code></p></li><li><p><code class="function">std::generate_n</code></p></li><li><p><code class="function">std::lexicographical_compare</code></p></li><li><p><code class="function">std::mismatch</code></p></li><li><p><code class="function">std::search</code></p></li><li><p><code class="function">std::search_n</code></p></li><li><p><code class="function">std::transform</code></p></li><li><p><code class="function">std::replace</code></p></li><li><p><code class="function">std::replace_if</code></p></li><li><p><code class="function">std::max_element</code></p></li><li><p><code class="function">std::merge</code></p></li><li><p><code class="function">std::min_element</code></p></li><li><p><code class="function">std::nth_element</code></p></li><li><p><code class="function">std::partial_sort</code></p></li><li><p><code class="function">std::partition</code></p></li><li><p><code class="function">std::random_shuffle</code></p></li><li><p><code class="function">std::set_union</code></p></li><li><p><code class="function">std::set_intersection</code></p></li><li><p><code class="function">std::set_symmetric_difference</code></p></li><li><p><code class="function">std::set_difference</code></p></li><li><p><code class="function">std::sort</code></p></li><li><p><code class="function">std::stable_sort</code></p></li><li><p><code class="function">std::unique_copy</code></p></li></ul></div></div><div class="bibliography"><div class="titlepage"><div><div><h2 class="title"><a id="parallel_mode.biblio"></a>Bibliography</h2></div></div></div><div class="biblioentry"><a id="id582450"></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"><a id="id511027"></a><p><span class="title"><i>
|
||||
. </span></span></p></div><div class="biblioentry"><a id="id597438"></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)
|
||||
|
@ -29,7 +29,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="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="shared_ptr.impl"></a>Implementation</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id529409"></a>Class Hierarchy</h4></div></div></div><p>
|
||||
</p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="shared_ptr.impl"></a>Implementation</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id625482"></a>Class Hierarchy</h4></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
|
||||
@ -71,7 +71,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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id562837"></a>Thread Safety</h4></div></div></div><p>
|
||||
</p></dd></dl></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id625501"></a>Thread Safety</h4></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,
|
||||
@ -129,7 +129,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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id547015"></a>Selecting Lock Policy</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id591089"></a>Selecting Lock Policy</h4></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
|
||||
@ -170,7 +170,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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id519282"></a>Dual C++0x and TR1 Implementation</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id600651"></a>Dual C++0x and TR1 Implementation</h4></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
|
||||
@ -181,7 +181,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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id555837"></a>Related functions and classes</h4></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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id626534"></a>Related functions and classes</h4></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
|
||||
@ -214,10 +214,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="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="shared_ptr.using"></a>Use</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id512356"></a>Examples</h4></div></div></div><p>
|
||||
</p></dd></dl></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="shared_ptr.using"></a>Use</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id591128"></a>Examples</h4></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="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id496722"></a>Unresolved Issues</h4></div></div></div><p>
|
||||
</p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id591144"></a>Unresolved Issues</h4></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
|
||||
@ -265,7 +265,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"><div class="titlepage"><div><div><h3 class="title"><a id="shared_ptr.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id503798"></a><p>[<abbr class="abbrev">
|
||||
</p></div><div class="bibliography"><div class="titlepage"><div><div><h3 class="title"><a id="shared_ptr.biblio"></a>Bibliography</h3></div></div></div><div class="biblioentry"><a id="id584044"></a><p>[<abbr class="abbrev">
|
||||
n2351
|
||||
</abbr>] <span class="title"><i>
|
||||
Improving shared_ptr for C++0x, Revision 2
|
||||
@ -274,7 +274,7 @@ be private.
|
||||
. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2351.htm" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id503822"></a><p>[<abbr class="abbrev">
|
||||
. </span></p></div><div class="biblioentry"><a id="id574721"></a><p>[<abbr class="abbrev">
|
||||
n2456
|
||||
</abbr>] <span class="title"><i>
|
||||
C++ Standard Library Active Issues List (Revision R52)
|
||||
@ -283,7 +283,7 @@ be private.
|
||||
. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2456.html" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id504545"></a><p>[<abbr class="abbrev">
|
||||
. </span></p></div><div class="biblioentry"><a id="id573791"></a><p>[<abbr class="abbrev">
|
||||
n2461
|
||||
</abbr>] <span class="title"><i>
|
||||
Working Draft, Standard for Programming Language C++
|
||||
@ -292,7 +292,7 @@ be private.
|
||||
. </span><span class="biblioid">
|
||||
<a class="ulink" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2461.pdf" target="_top">
|
||||
</a>
|
||||
. </span></p></div><div class="biblioentry"><a id="id516676"></a><p>[<abbr class="abbrev">
|
||||
. </span></p></div><div class="biblioentry"><a id="id573815"></a><p>[<abbr class="abbrev">
|
||||
boostshared_ptr
|
||||
</abbr>] <span class="title"><i>
|
||||
Boost C++ Libraries documentation - shared_ptr class template
|
||||
|
@ -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.74.3" /><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" lang="en" xml:lang="en"><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
|
||||
<a class="ulink" href="http://www.fsf.org" target="_top">FSF</a>
|
||||
</p></div><div><div class="legalnotice"><a id="id593728"></a><p>
|
||||
</p></div><div><div class="legalnotice"><a id="id650053"></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
|
||||
@ -51,7 +51,7 @@
|
||||
|
||||
</a></span></dt><dt><span class="appendix"><a href="appendix_gpl.html">D.
|
||||
GNU 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><dt><span class="index"><a href="bk01ix01.html">Index</a></span></dt></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>1.1. <a href="status.html#id516787">C++ 1998/2003 Implementation Status</a></dt><dt>1.2. <a href="status.html#id516112">C++ TR1 Implementation Status</a></dt><dt>1.3. <a href="status.html#id513467">C++ 200x Implementation Status</a></dt><dt>3.1. <a href="using_headers.html#id505541">C++ 1998 Library Headers</a></dt><dt>3.2. <a href="using_headers.html#id555987">C++ 1998 Library Headers for C Library Facilities</a></dt><dt>3.3. <a href="using_headers.html#id558435">C++ 200x Library Headers</a></dt><dt>3.4. <a href="using_headers.html#id582396">C++ 200x Library Headers for C Library Facilities</a></dt><dt>3.5. <a href="using_headers.html#id562184">C++ TR1 Library Headers</a></dt><dt>3.6. <a href="using_headers.html#id506704">C++ TR1 Library Headers for C Library Facilities</a></dt><dt>3.7. <a href="using_headers.html#id596340">C++ ABI Headers</a></dt><dt>3.8. <a href="using_headers.html#id487606">Extension Headers</a></dt><dt>3.9. <a href="using_headers.html#id500513">Extension Debug Headers</a></dt><dt>3.10. <a href="using_headers.html#id508803">Extension Parallel Headers</a></dt><dt>30.1. <a href="bk01pt12ch30s03.html#id493443">Debugging Containers</a></dt><dt>30.2. <a href="bk01pt12ch30s03.html#id500939">Debugging Containers C++0x</a></dt><dt>31.1. <a href="bk01pt12ch31s03.html#id485563">Parallel Algorithms</a></dt><dt>32.1. <a href="bitmap_allocator.html#id518971">Bitmap Allocator Memory Map</a></dt><dt>A.1. <a href="documentation_style.html#id591330">HTML to Docbook XML markup comparison</a></dt><dt>A.2. <a href="documentation_style.html#id517117">Docbook XML Element Use</a></dt><dt>B.1. <a href="api.html#id523957">Extension Allocators</a></dt><dt>B.2. <a href="api.html#id527280">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><dt><span class="index"><a href="bk01ix01.html">Index</a></span></dt></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>1.1. <a href="status.html#id595208">C++ 1998/2003 Implementation Status</a></dt><dt>1.2. <a href="status.html#id581307">C++ TR1 Implementation Status</a></dt><dt>1.3. <a href="status.html#id598251">C++ 200x Implementation Status</a></dt><dt>3.1. <a href="using_headers.html#id626164">C++ 1998 Library Headers</a></dt><dt>3.2. <a href="using_headers.html#id631102">C++ 1998 Library Headers for C Library Facilities</a></dt><dt>3.3. <a href="using_headers.html#id631311">C++ 200x Library Headers</a></dt><dt>3.4. <a href="using_headers.html#id581996">C++ 200x Library Headers for C Library Facilities</a></dt><dt>3.5. <a href="using_headers.html#id581940">C++ TR1 Library Headers</a></dt><dt>3.6. <a href="using_headers.html#id625624">C++ TR1 Library Headers for C Library Facilities</a></dt><dt>3.7. <a href="using_headers.html#id610926">C++ ABI Headers</a></dt><dt>3.8. <a href="using_headers.html#id623864">Extension Headers</a></dt><dt>3.9. <a href="using_headers.html#id592519">Extension Debug Headers</a></dt><dt>3.10. <a href="using_headers.html#id578064">Extension Parallel Headers</a></dt><dt>30.1. <a href="bk01pt12ch30s03.html#id594482">Debugging Containers</a></dt><dt>30.2. <a href="bk01pt12ch30s03.html#id532544">Debugging Containers C++0x</a></dt><dt>31.1. <a href="bk01pt12ch31s03.html#id628802">Parallel Algorithms</a></dt><dt>32.1. <a href="bitmap_allocator.html#id673499">Bitmap Allocator Memory Map</a></dt><dt>A.1. <a href="documentation_style.html#id563226">HTML to Docbook XML markup comparison</a></dt><dt>A.2. <a href="documentation_style.html#id677436">Docbook XML Element Use</a></dt><dt>B.1. <a href="api.html#id688075">Extension Allocators</a></dt><dt>B.2. <a href="api.html#id672726">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>
|
||||
|
@ -8,7 +8,7 @@ This status table is based on the table of contents of ISO/IEC 14882:2003.
|
||||
</p><p>
|
||||
This page describes the C++0x support in mainline GCC SVN, not in any
|
||||
particular release.
|
||||
</p><div class="table"><a id="id516787"></a><p class="title"><b>Table 1.1. C++ 1998/2003 Implementation Status</b></p><div class="table-contents"><table summary="C++ 1998/2003 Implementation Status" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Section</th><th align="left">Description</th><th align="left">Status</th><th align="left">Comments</th></tr></thead><tbody><tr><td align="left">
|
||||
</p><div class="table"><a id="id595208"></a><p class="title"><b>Table 1.1. C++ 1998/2003 Implementation Status</b></p><div class="table-contents"><table summary="C++ 1998/2003 Implementation Status" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Section</th><th align="left">Description</th><th align="left">Status</th><th align="left">Comments</th></tr></thead><tbody><tr><td align="left">
|
||||
<span class="emphasis"><em>18</em></span>
|
||||
</td><td colspan="3" align="left">
|
||||
<span class="emphasis"><em>Language support</em></span>
|
||||
@ -152,7 +152,7 @@ In this implementation the header names are prefixed by
|
||||
</p><p>
|
||||
This page describes the TR1 support in mainline GCC SVN, not in any particular
|
||||
release.
|
||||
</p><div class="table"><a id="id516112"></a><p class="title"><b>Table 1.2. C++ TR1 Implementation Status</b></p><div class="table-contents"><table summary="C++ TR1 Implementation Status" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Section</th><th align="left">Description</th><th align="left">Status</th><th align="left">Comments</th></tr></thead><tbody><tr><td align="left"><span class="emphasis"><em>2</em></span></td><td colspan="3" align="left"><span class="emphasis"><em>General Utilities</em></span></td></tr><tr><td align="left">2.1</td><td align="left">Reference wrappers</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">2.1.1</td><td align="left">Additions to header <code class="code"><functional></code> synopsis</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2</td><td align="left">Class template <code class="code">reference_wrapper</code></td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">2.1.2.1</td><td align="left"><code class="code">reference_wrapper</code> construct/copy/destroy</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.2</td><td align="left"><code class="code">reference_wrapper</code> assignment</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.3</td><td align="left"><code class="code">reference_wrapper</code> access</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.4</td><td align="left"><code class="code">reference_wrapper</code> invocation</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.5</td><td align="left"><code class="code">reference_wrapper</code> helper functions</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.2</td><td align="left">Smart pointers</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">2.2.1</td><td align="left">Additions to header <code class="code"><memory></code> synopsis</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.2.2</td><td align="left">Class <code class="code">bad_weak_ptr</code></td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.2.3</td><td align="left">Class template <code class="code">shared_ptr</code></td><td align="left"> </td><td align="left">
|
||||
</p><div class="table"><a id="id581307"></a><p class="title"><b>Table 1.2. C++ TR1 Implementation Status</b></p><div class="table-contents"><table summary="C++ TR1 Implementation Status" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Section</th><th align="left">Description</th><th align="left">Status</th><th align="left">Comments</th></tr></thead><tbody><tr><td align="left"><span class="emphasis"><em>2</em></span></td><td colspan="3" align="left"><span class="emphasis"><em>General Utilities</em></span></td></tr><tr><td align="left">2.1</td><td align="left">Reference wrappers</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">2.1.1</td><td align="left">Additions to header <code class="code"><functional></code> synopsis</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2</td><td align="left">Class template <code class="code">reference_wrapper</code></td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">2.1.2.1</td><td align="left"><code class="code">reference_wrapper</code> construct/copy/destroy</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.2</td><td align="left"><code class="code">reference_wrapper</code> assignment</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.3</td><td align="left"><code class="code">reference_wrapper</code> access</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.4</td><td align="left"><code class="code">reference_wrapper</code> invocation</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.1.2.5</td><td align="left"><code class="code">reference_wrapper</code> helper functions</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.2</td><td align="left">Smart pointers</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">2.2.1</td><td align="left">Additions to header <code class="code"><memory></code> synopsis</td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.2.2</td><td align="left">Class <code class="code">bad_weak_ptr</code></td><td align="left">Y</td><td align="left"> </td></tr><tr><td align="left">2.2.3</td><td align="left">Class template <code class="code">shared_ptr</code></td><td align="left"> </td><td align="left">
|
||||
<p>
|
||||
Uses code from
|
||||
<a class="ulink" href="http://www.boost.org/libs/smart_ptr/shared_ptr.htm" target="_top">boost::shared_ptr</a>.
|
||||
@ -170,7 +170,7 @@ presence of the required flag.
|
||||
</p><p>
|
||||
This page describes the C++0x support in mainline GCC SVN, not in any
|
||||
particular release.
|
||||
</p><div class="table"><a id="id513467"></a><p class="title"><b>Table 1.3. C++ 200x Implementation Status</b></p><div class="table-contents"><table summary="C++ 200x Implementation Status" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Section</th><th align="left">Description</th><th align="left">Status</th><th align="left">Comments</th></tr></thead><tbody><tr><td align="left">
|
||||
</p><div class="table"><a id="id598251"></a><p class="title"><b>Table 1.3. C++ 200x Implementation Status</b></p><div class="table-contents"><table summary="C++ 200x Implementation Status" border="1"><colgroup><col align="left" /><col align="left" /><col align="left" /><col align="left" /></colgroup><thead><tr><th align="left">Section</th><th align="left">Description</th><th align="left">Status</th><th align="left">Comments</th></tr></thead><tbody><tr><td align="left">
|
||||
<span class="emphasis"><em>18</em></span>
|
||||
</td><td colspan="3" align="left">
|
||||
<span class="emphasis"><em>Language support</em></span>
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="shared_ptr.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt05ch13.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.strings"></a>Part V.
|
||||
Strings
|
||||
<a id="id514849" class="indexterm"></a>
|
||||
<a id="id585392" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="bk01pt05ch13.html">13. String Classes</a></span></dt><dd><dl><dt><span class="sect1"><a href="bk01pt05ch13.html#strings.string.simple">Simple Transformations</a></span></dt><dt><span class="sect1"><a href="bk01pt05ch13s02.html">Case Sensitivity</a></span></dt><dt><span class="sect1"><a href="bk01pt05ch13s03.html">Arbitrary Character Types</a></span></dt><dt><span class="sect1"><a href="bk01pt05ch13s04.html">Tokenizing</a></span></dt><dt><span class="sect1"><a href="bk01pt05ch13s05.html">Shrink to Fit</a></span></dt><dt><span class="sect1"><a href="bk01pt05ch13s06.html">CString (MFC)</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="shared_ptr.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="bk01pt05ch13.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">shared_ptr </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 13. String Classes</td></tr></table></div></body></html>
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="debug.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="bk01pt02pr01.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.support"></a>Part II.
|
||||
Support
|
||||
<a id="id487465" class="indexterm"></a>
|
||||
<a id="id631480" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="preface"><a href="bk01pt02pr01.html"></a></span></dt><dt><span class="chapter"><a href="fundamental_types.html">4. Types</a></span></dt><dd><dl><dt><span class="sect1"><a href="fundamental_types.html#manual.support.types.fundamental">Fundamental Types</a></span></dt><dt><span class="sect1"><a href="bk01pt02ch04s02.html">Numeric Properties</a></span></dt><dt><span class="sect1"><a href="bk01pt02ch04s03.html">NULL</a></span></dt></dl></dd><dt><span class="chapter"><a href="dynamic_memory.html">5. Dynamic Memory</a></span></dt><dt><span class="chapter"><a href="termination.html">6. Termination</a></span></dt><dd><dl><dt><span class="sect1"><a href="termination.html#support.termination.handlers">Termination Handlers</a></span></dt><dt><span class="sect1"><a href="verbose_termination.html">Verbose Terminate Handler</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="debug.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="bk01pt02pr01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Debugging Support </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></body></html>
|
||||
|
File diff suppressed because one or more lines are too long
@ -5,5 +5,5 @@
|
||||
|
||||
</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bk01pt03ch07s03.html">Prev</a> </td><th width="60%" align="center">The GNU C++ Library</th><td width="20%" align="right"> <a accesskey="n" href="functors.html">Next</a></td></tr></table><hr /></div><div class="part" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="manual.util"></a>Part IV.
|
||||
Utilities
|
||||
<a id="id584224" class="indexterm"></a>
|
||||
<a id="id571633" class="indexterm"></a>
|
||||
</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="functors.html">9. Functors</a></span></dt><dt><span class="chapter"><a href="pairs.html">10. Pairs</a></span></dt><dt><span class="chapter"><a href="memory.html">11. Memory</a></span></dt><dd><dl><dt><span class="sect1"><a href="memory.html#manual.util.memory.allocator">Allocators</a></span></dt><dd><dl><dt><span class="sect2"><a href="memory.html#allocator.req">Requirements</a></span></dt><dt><span class="sect2"><a href="memory.html#allocator.design_issues">Design Issues</a></span></dt><dt><span class="sect2"><a href="memory.html#allocator.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="memory.html#allocator.using">Using a Specific Allocator</a></span></dt><dt><span class="sect2"><a href="memory.html#allocator.custom">Custom Allocators</a></span></dt><dt><span class="sect2"><a href="memory.html#allocator.ext">Extension Allocators</a></span></dt></dl></dd><dt><span class="sect1"><a href="auto_ptr.html">auto_ptr</a></span></dt><dd><dl><dt><span class="sect2"><a href="auto_ptr.html#auto_ptr.limitations">Limitations</a></span></dt><dt><span class="sect2"><a href="auto_ptr.html#auto_ptr.using">Use in Containers</a></span></dt></dl></dd><dt><span class="sect1"><a href="shared_ptr.html">shared_ptr</a></span></dt><dd><dl><dt><span class="sect2"><a href="shared_ptr.html#shared_ptr.req">Requirements</a></span></dt><dt><span class="sect2"><a href="shared_ptr.html#shared_ptr.design_issues">Design Issues</a></span></dt><dt><span class="sect2"><a href="shared_ptr.html#shared_ptr.impl">Implementation</a></span></dt><dt><span class="sect2"><a href="shared_ptr.html#shared_ptr.using">Use</a></span></dt><dt><span class="sect2"><a href="shared_ptr.html#shared_ptr.ack">Acknowledgments</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="traits.html">12. Traits</a></span></dt></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bk01pt03ch07s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="spine.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="functors.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Cancellation </td><td width="20%" align="center"><a accesskey="h" href="../spine.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 9. Functors</td></tr></table></div></body></html>
|
||||
|
@ -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>The GNU C++ Library Documentation</title><meta name="generator" content="DocBook XSL Stylesheets V1.74.3" /><link rel="home" href="spine.html" title="The GNU C++ Library Documentation" /><link rel="next" href="manual/spine.html" title="The GNU C++ Library" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">The GNU C++ Library Documentation</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="manual/spine.html">Next</a></td></tr></table><hr /></div><div class="set" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="set-index"></a>The GNU C++ Library Documentation</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname"></span> <span class="surname"></span></h3></div><div class="author"><h3 class="author"><span class="firstname">Paolo</span> <span class="surname">Carlini</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Phil</span> <span class="surname">Edwards</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Doug</span> <span class="surname">Gregor</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Benjamin</span> <span class="surname">Kosnik</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Dhruv</span> <span class="surname">Matani</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Jason</span> <span class="surname">Merrill</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Mark</span> <span class="surname">Mitchell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Nathan</span> <span class="surname">Myers</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Felix</span> <span class="surname">Natter</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Stefan</span> <span class="surname">Olsson</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Johannes</span> <span class="surname">Singler</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Ami</span> <span class="surname">Tavory</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Jonathan</span> <span class="surname">Wakely</span></h3></div></div></div><div><p class="copyright">Copyright © 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
||||
<a class="ulink" href="http://fsf.org" target="_top">FSF</a>
|
||||
<a class="ulink" href="http://www.fsf.org" target="_top">FSF</a>
|
||||
</p></div></div><hr /></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="book"><a href="manual/spine.html">The GNU C++ Library</a></span></dt><dd><dl><dt><span class="part"><a href="manual/intro.html">I.
|
||||
Introduction
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<copyright>
|
||||
<year>2007</year>
|
||||
<holder>
|
||||
<ulink url="fsf.org">FSF
|
||||
<ulink url="www.fsf.org">FSF
|
||||
</ulink>
|
||||
</holder>
|
||||
</copyright>
|
||||
|
@ -15,7 +15,7 @@
|
||||
2008
|
||||
</year>
|
||||
<holder>
|
||||
<ulink url="http://fsf.org">FSF</ulink>
|
||||
<ulink url="http://www.fsf.org">FSF</ulink>
|
||||
</holder>
|
||||
</copyright>
|
||||
</articleinfo>
|
||||
|
@ -11,7 +11,7 @@
|
||||
</para>
|
||||
<para>
|
||||
Copyright © 2007 Free Software Foundation, Inc.
|
||||
<ulink url="http://fsf.org/">http://fsf.org/</ulink>
|
||||
<ulink url="http://www.fsf.org/">http://www.fsf.org/</ulink>
|
||||
</para>
|
||||
<para>
|
||||
Everyone is permitted to copy and distribute verbatim copies of this license
|
||||
|
@ -26,7 +26,7 @@
|
||||
<para>
|
||||
</para>
|
||||
|
||||
<sect2 id="abi.cxx_interface" xreflabel="abi.cxx_interface">
|
||||
<sect2 id="abi.cxx_interface">
|
||||
<title>The C++ Interface</title>
|
||||
|
||||
<para>
|
||||
@ -104,7 +104,7 @@ given compiler ABI. In a nutshell:
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="abi.versioning" xreflabel="abi.versioning">
|
||||
<sect2 id="abi.versioning">
|
||||
<title>Versioning</title>
|
||||
|
||||
<para> The C++ interface has evolved throughout the history of the GNU
|
||||
@ -112,7 +112,7 @@ C++ toolchain. With each release, various details have been changed so
|
||||
as to give distinct versions to the C++ interface.
|
||||
</para>
|
||||
|
||||
<sect3 id="abi.versioning.goals" xreflabel="abi.versioning.goals">
|
||||
<sect3 id="abi.versioning.goals">
|
||||
<title>Goals</title>
|
||||
|
||||
<para>Extending existing, stable ABIs. Versioning gives subsequent
|
||||
@ -135,7 +135,7 @@ compatible.
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="abi.versioning.history" xreflabel="abi.versioning.history">
|
||||
<sect3 id="abi.versioning.history">
|
||||
<title>History</title>
|
||||
|
||||
<para>
|
||||
@ -548,7 +548,7 @@ compatible.
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="abi.versioning.prereq" xreflabel="abi.versioning.prereq">
|
||||
<sect3 id="abi.versioning.prereq">
|
||||
<title>Prerequisites</title>
|
||||
<para>
|
||||
Minimum environment that supports a versioned ABI: A supported
|
||||
@ -571,7 +571,7 @@ compatible.
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="abi.versioning.config" xreflabel="abi.versioning.config">
|
||||
<sect3 id="abi.versioning.config">
|
||||
<title>Configuring</title>
|
||||
|
||||
<para>
|
||||
@ -601,7 +601,7 @@ compatible.
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="abi.versioning.active" xreflabel="abi.versioning.active">
|
||||
<sect3 id="abi.versioning.active">
|
||||
<title>Checking Active</title>
|
||||
|
||||
<para>
|
||||
@ -657,7 +657,7 @@ of the name, then the executable is versioned. Here's an example:
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="abi.changes_allowed" xreflabel="abi.changes_allowed">
|
||||
<sect2 id="abi.changes_allowed">
|
||||
<title>Allowed Changes</title>
|
||||
|
||||
<para>
|
||||
@ -675,7 +675,7 @@ Other allowed changes are possible.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="abi.changes_no" xreflabel="abi.changes_no">
|
||||
<sect2 id="abi.changes_no">
|
||||
<title>Prohibited Changes</title>
|
||||
|
||||
<para>
|
||||
@ -715,7 +715,7 @@ class in registers, the compiler will be forced to use memory. See <ulink url="h
|
||||
|
||||
|
||||
|
||||
<sect2 id="abi.impl" xreflabel="abi.impl">
|
||||
<sect2 id="abi.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<orderedlist>
|
||||
@ -832,10 +832,10 @@ standard includes.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="abi.testing" xreflabel="abi.testing">
|
||||
<sect2 id="abi.testing">
|
||||
<title>Testing</title>
|
||||
|
||||
<sect3 id="abi.testing.single" xreflabel="abi.testing.single">
|
||||
<sect3 id="abi.testing.single">
|
||||
<title>Single ABI Testing</title>
|
||||
|
||||
<para>
|
||||
@ -934,7 +934,7 @@ us. We'd like to know about them!
|
||||
</para>
|
||||
|
||||
</sect3>
|
||||
<sect3 id="abi.testing.multi" xreflabel="abi.testing.multi">
|
||||
<sect3 id="abi.testing.multi">
|
||||
<title>Multiple ABI Testing</title>
|
||||
<para>
|
||||
A "C" application, dynamically linked to two shared libraries, liba,
|
||||
@ -1023,7 +1023,7 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so.
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="abi.issues" xreflabel="abi.issues">
|
||||
<sect2 id="abi.issues">
|
||||
<title>Outstanding Issues</title>
|
||||
|
||||
<para>
|
||||
@ -1049,7 +1049,7 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so.
|
||||
|
||||
</sect2>
|
||||
|
||||
<bibliography id="abi.biblio" xreflabel="abi.biblio">
|
||||
<bibliography id="abi.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -24,7 +24,7 @@
|
||||
management classes.
|
||||
</para>
|
||||
|
||||
<sect2 id="allocator.req" xreflabel="allocator.req">
|
||||
<sect2 id="allocator.req">
|
||||
<title>Requirements</title>
|
||||
|
||||
<para>
|
||||
@ -87,7 +87,7 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.design_issues" xreflabel="allocator.design_issues">
|
||||
<sect2 id="allocator.design_issues">
|
||||
<title>Design Issues</title>
|
||||
|
||||
<para>
|
||||
@ -138,7 +138,7 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.impl" xreflabel="allocator.impl">
|
||||
<sect2 id="allocator.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<sect3>
|
||||
@ -285,7 +285,7 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.using" xreflabel="allocator.using">
|
||||
<sect2 id="allocator.using">
|
||||
<title>Using a Specific Allocator</title>
|
||||
|
||||
<para>
|
||||
@ -305,7 +305,7 @@
|
||||
</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.custom" xreflabel="allocator.custom">
|
||||
<sect2 id="allocator.custom">
|
||||
<title>Custom Allocators</title>
|
||||
|
||||
<para>
|
||||
@ -323,7 +323,7 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.ext" xreflabel="allocator.ext">
|
||||
<sect2 id="allocator.ext">
|
||||
<title>Extension Allocators</title>
|
||||
|
||||
<para>
|
||||
@ -492,7 +492,7 @@
|
||||
</sect2>
|
||||
|
||||
|
||||
<bibliography id="allocator.biblio" xreflabel="allocator.biblio">
|
||||
<bibliography id="allocator.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -35,7 +35,7 @@
|
||||
<sect1 id="contrib.list" xreflabel="Contributor Checklist">
|
||||
<title>Contributor Checklist</title>
|
||||
|
||||
<sect2 id="list.reading" xreflabel="list.reading">
|
||||
<sect2 id="list.reading">
|
||||
<title>Reading</title>
|
||||
|
||||
<itemizedlist>
|
||||
@ -101,7 +101,7 @@
|
||||
</itemizedlist>
|
||||
|
||||
</sect2>
|
||||
<sect2 id="list.copyright" xreflabel="list.copyright">
|
||||
<sect2 id="list.copyright">
|
||||
<title>Assignment</title>
|
||||
<para>
|
||||
Small changes can be accepted without a copyright assignment form on
|
||||
@ -143,7 +143,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="list.getting" xreflabel="list.getting">
|
||||
<sect2 id="list.getting">
|
||||
<title>Getting Sources</title>
|
||||
<para>
|
||||
<ulink url="http://gcc.gnu.org/svnwrite.html">Getting write access
|
||||
@ -151,7 +151,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="list.patches" xreflabel="list.patches">
|
||||
<sect2 id="list.patches">
|
||||
<title>Submitting Patches</title>
|
||||
|
||||
<para>
|
||||
@ -318,7 +318,7 @@ indicate a place that may require attention for multi-thread safety.
|
||||
<title>Coding Style</title>
|
||||
<para>
|
||||
</para>
|
||||
<sect2 id="coding_style.bad_identifiers" xreflabel="coding_style.bad">
|
||||
<sect2 id="coding_style.bad_identifiers">
|
||||
<title>Bad Identifiers</title>
|
||||
<para>
|
||||
Identifiers that conflict and should be avoided.
|
||||
@ -513,7 +513,7 @@ indicate a place that may require attention for multi-thread safety.
|
||||
</literallayout>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="coding_style.example" xreflabel="coding_style.example">
|
||||
<sect2 id="coding_style.example">
|
||||
<title>By Example</title>
|
||||
<literallayout>
|
||||
This library is written to appropriate C++ coding standards. As such,
|
||||
@ -915,9 +915,9 @@ indicate a place that may require attention for multi-thread safety.
|
||||
<sect1 id="contrib.doc_style" xreflabel="Documentation Style">
|
||||
<?dbhtml filename="documentation_style.html"?>
|
||||
<title>Documentation Style</title>
|
||||
<sect2 id="doc_style.doxygen" xreflabel="doc_style.doxygen">
|
||||
<sect2 id="doc_style.doxygen">
|
||||
<title>Doxygen</title>
|
||||
<sect3 id="doxygen.prereq" xreflabel="doxygen.prereq">
|
||||
<sect3 id="doxygen.prereq">
|
||||
<title>Prerequisites</title>
|
||||
<para>
|
||||
Prerequisite tools are Bash 2.x,
|
||||
@ -936,7 +936,7 @@ indicate a place that may require attention for multi-thread safety.
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="doxygen.rules" xreflabel="doxygen.rules">
|
||||
<sect3 id="doxygen.rules">
|
||||
<title>Generating the Doxygen Files</title>
|
||||
<para>
|
||||
The following Makefile rules run Doxygen to generate HTML
|
||||
@ -972,7 +972,7 @@ indicate a place that may require attention for multi-thread safety.
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="doxygen.markup" xreflabel="doxygen.markup">
|
||||
<sect3 id="doxygen.markup">
|
||||
<title>Markup</title>
|
||||
|
||||
<para>
|
||||
@ -1055,10 +1055,10 @@ indicate a place that may require attention for multi-thread safety.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="doc_style.docbook" xreflabel="doc_style.docbook">
|
||||
<sect2 id="doc_style.docbook">
|
||||
<title>Docbook</title>
|
||||
|
||||
<sect3 id="docbook.prereq" xreflabel="docbook.prereq">
|
||||
<sect3 id="docbook.prereq">
|
||||
<title>Prerequisites</title>
|
||||
<para>
|
||||
Editing the DocBook sources requires an XML editor. Many
|
||||
@ -1129,7 +1129,7 @@ xmllint --noout --valid <filename>xml/index.xml</filename>
|
||||
</screen>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="docbook.rules" xreflabel="docbook.rules">
|
||||
<sect3 id="docbook.rules">
|
||||
<title>Generating the DocBook Files</title>
|
||||
|
||||
<para>
|
||||
@ -1157,7 +1157,7 @@ xmllint --noout --valid <filename>xml/index.xml</filename>
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="docbook.examples" xreflabel="docbook.examples">
|
||||
<sect3 id="docbook.examples">
|
||||
<title>File Organization and Basics</title>
|
||||
|
||||
<literallayout>
|
||||
@ -1223,7 +1223,7 @@ xmllint --noout --valid <filename>xml/index.xml</filename>
|
||||
</literallayout>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="docbook.markup" xreflabel="docbook.markup">
|
||||
<sect3 id="docbook.markup">
|
||||
<title>Markup By Example</title>
|
||||
|
||||
<para>
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
<title>auto_ptr</title>
|
||||
|
||||
<sect2 id="auto_ptr.limitations" xreflabel="auto_ptr.limitations">
|
||||
<sect2 id="auto_ptr.limitations">
|
||||
<title>Limitations</title>
|
||||
|
||||
<para>Explaining all of the fun and delicious things that can
|
||||
@ -81,7 +81,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="auto_ptr.using" xreflabel="auto_ptr.using">
|
||||
<sect2 id="auto_ptr.using">
|
||||
<title>Use in Containers</title>
|
||||
|
||||
<para>
|
||||
@ -130,4 +130,4 @@ Should you try this with the checks enabled, you will see an error.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
</sect1>
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
<title>Backwards Compatibility</title>
|
||||
|
||||
<sect2 id="backwards.first" xreflabel="backwards.first">
|
||||
<sect2 id="backwards.first">
|
||||
<title>First</title>
|
||||
|
||||
<para>The first generation GNU C++ library was called libg++. It was a
|
||||
@ -72,7 +72,7 @@ considered replaced and rewritten.
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="backwards.second" xreflabel="backwards.second">
|
||||
<sect2 id="backwards.second">
|
||||
<title>Second</title>
|
||||
|
||||
<para>
|
||||
@ -588,7 +588,7 @@ particular <quote>info iostream</quote>.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="backwards.third" xreflabel="backwards.third">
|
||||
<sect2 id="backwards.third">
|
||||
<title>Third</title>
|
||||
|
||||
<para> The third generation GNU C++ library is called libstdc++, or
|
||||
@ -1250,7 +1250,7 @@ AC_DEFUN([AC_HEADER_UNORDERED_SET], [
|
||||
|
||||
</sect2>
|
||||
|
||||
<bibliography id="backwards.biblio" xreflabel="backwards.biblio">
|
||||
<bibliography id="backwards.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -1,4 +1,4 @@
|
||||
<sect1 id="manual.ext.allocator.bitmap" xreflabel="mt allocator">
|
||||
<sect1 id="manual.ext.allocator.bitmap" xreflabel="bitmap_allocator">
|
||||
<?dbhtml filename="bitmap_allocator.html"?>
|
||||
|
||||
<sect1info>
|
||||
@ -17,7 +17,7 @@
|
||||
<para>
|
||||
</para>
|
||||
|
||||
<sect2 id="allocator.bitmap.design" xreflabel="allocator.bitmap.design">
|
||||
<sect2 id="allocator.bitmap.design">
|
||||
<title>Design</title>
|
||||
|
||||
<para>
|
||||
@ -55,7 +55,7 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.bitmap.impl" xreflabel="allocator.bitmap.impl">
|
||||
<sect2 id="allocator.bitmap.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<sect3 id="bitmap.impl.free_list_store" xreflabel="Free List Store">
|
||||
|
@ -1,4 +1,4 @@
|
||||
<sect1 id="appendix.porting.build_hacking" xreflabel="build_hacking">
|
||||
<sect1 id="appendix.porting.build_hacking" xreflabel="Build Hacking">
|
||||
<?dbhtml filename="build_hacking.html"?>
|
||||
|
||||
<sect1info>
|
||||
@ -23,7 +23,7 @@
|
||||
|
||||
<title>Configure and Build Hacking</title>
|
||||
|
||||
<sect2 id="build_hacking.prereq" xreflabel="build_hacking.prereq">
|
||||
<sect2 id="build_hacking.prereq">
|
||||
<title>Prerequisites</title>
|
||||
<para>
|
||||
As noted <ulink
|
||||
@ -40,7 +40,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="build_hacking.map" xreflabel="build_hacking.map">
|
||||
<sect2 id="build_hacking.map">
|
||||
<title>Overview: What Comes from Where</title>
|
||||
|
||||
<screen>
|
||||
@ -67,7 +67,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="build_hacking.scripts" xreflabel="build_hacking.scripts">
|
||||
<sect2 id="build_hacking.scripts">
|
||||
<title>Storing Information in non-AC files (like configure.host)</title>
|
||||
|
||||
<para>
|
||||
@ -99,7 +99,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="build_hacking.conventions" xreflabel="build_hacking.conventions">
|
||||
<sect2 id="build_hacking.conventions">
|
||||
<title>Coding and Commenting Conventions</title>
|
||||
|
||||
<para>
|
||||
@ -124,7 +124,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="build_hacking.acinclude" xreflabel="build_hacking.acinclude">
|
||||
<sect2 id="build_hacking.acinclude">
|
||||
<title>The acinclude.m4 layout</title>
|
||||
<para>
|
||||
The nice thing about acinclude.m4/aclocal.m4 is that macros aren't
|
||||
@ -215,7 +215,7 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="build_hacking.enable" xreflabel="build_hacking.enable">
|
||||
<sect2 id="build_hacking.enable">
|
||||
<title><constant>GLIBCXX_ENABLE</constant>, the <literal>--enable</literal> maker</title>
|
||||
|
||||
<para>
|
||||
|
@ -30,7 +30,7 @@ specializations for wide and narrow characters and the
|
||||
implementation-provided extended functionality are given.
|
||||
</para>
|
||||
|
||||
<sect2 id="facet.codecvt.req" xreflabel="facet.codecvt.req">
|
||||
<sect2 id="facet.codecvt.req">
|
||||
<title>Requirements</title>
|
||||
|
||||
<para>
|
||||
@ -110,10 +110,10 @@ template parameter, imply an implementation strategy that is mostly
|
||||
mcsrtombs and wcsrtombs in particular.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.codecvt.design" xreflabel="facet.codecvt.design">
|
||||
<sect2 id="facet.codecvt.design">
|
||||
<title>Design</title>
|
||||
|
||||
<sect3 id="codecvt.design.wchar_t_size" xreflabel="codecvt.design.wchar_t_size">
|
||||
<sect3 id="codecvt.design.wchar_t_size">
|
||||
<title><type>wchar_t</type> Size</title>
|
||||
|
||||
<para>
|
||||
@ -133,7 +133,7 @@ mcsrtombs and wcsrtombs in particular.</para>
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="codecvt.design.unicode" xreflabel="codecvt.design.unicode">
|
||||
<sect3 id="codecvt.design.unicode">
|
||||
<title>Support for Unicode</title>
|
||||
<para>
|
||||
Probably the most frequently asked question about code conversion
|
||||
@ -238,7 +238,7 @@ mechanism may be required.
|
||||
</itemizedlist>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="codecvt.design.issues" xreflabel="codecvt.design.issues">
|
||||
<sect3 id="codecvt.design.issues">
|
||||
<title>Other Issues</title>
|
||||
<para>
|
||||
In addition, multi-threaded and multi-locale environments also impact
|
||||
@ -288,7 +288,7 @@ LC_CTYPE category implements.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.codecvt.impl" xreflabel="facet.codecvt.impl">
|
||||
<sect2 id="facet.codecvt.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<para>
|
||||
@ -434,7 +434,7 @@ codecvt usage.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.codecvt.use" xreflabel="facet.codecvt.use">
|
||||
<sect2 id="facet.codecvt.use">
|
||||
<title>Use</title>
|
||||
<para>A conversions involving string literal.</para>
|
||||
|
||||
@ -479,7 +479,7 @@ codecvt usage.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.codecvt.future" xreflabel="facet.codecvt.future">
|
||||
<sect2 id="facet.codecvt.future">
|
||||
<title>Future</title>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
@ -535,7 +535,7 @@ codecvt usage.
|
||||
</sect2>
|
||||
|
||||
|
||||
<bibliography id="facet.codecvt.biblio" xreflabel="facet.codecvt.biblio">
|
||||
<bibliography id="facet.codecvt.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
<title>ctype</title>
|
||||
|
||||
<sect2 id="facet.ctype.impl" xreflabel="facet.ctype.impl">
|
||||
<sect2 id="facet.ctype.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<sect3>
|
||||
@ -60,7 +60,7 @@ characters.
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.ctype.future" xreflabel="facet.ctype.future">
|
||||
<sect2 id="facet.ctype.future">
|
||||
<title>Future</title>
|
||||
|
||||
|
||||
@ -117,7 +117,7 @@ characters.
|
||||
</sect2>
|
||||
|
||||
|
||||
<bibliography id="facet.ctype.biblio" xreflabel="facet.ctype.biblio">
|
||||
<bibliography id="facet.ctype.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -20,7 +20,7 @@
|
||||
are some of them.
|
||||
</para>
|
||||
|
||||
<sect2 id="debug.compiler" xreflabel="debug.compiler">
|
||||
<sect2 id="debug.compiler">
|
||||
<title>Using <command>g++</command></title>
|
||||
<para>
|
||||
Compiler flags determine how debug information is transmitted
|
||||
@ -59,7 +59,7 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="debug.req" xreflabel="debug.req">
|
||||
<sect2 id="debug.req">
|
||||
<title>Debug Versions of Library Binary Files</title>
|
||||
|
||||
<para>
|
||||
@ -96,7 +96,7 @@
|
||||
application to use the <link linkend="manual.ext.debug_mode">debug mode</link>.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="debug.memory" xreflabel="debug.memory">
|
||||
<sect2 id="debug.memory">
|
||||
<title>Memory Leak Hunting</title>
|
||||
|
||||
<para>
|
||||
@ -191,7 +191,7 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="debug.gdb" xreflabel="debug.gdb">
|
||||
<sect2 id="debug.gdb">
|
||||
<title>Using <command>gdb</command></title>
|
||||
<para>
|
||||
</para>
|
||||
@ -219,7 +219,7 @@
|
||||
</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="debug.exceptions" xreflabel="debug.exceptions">
|
||||
<sect2 id="debug.exceptions">
|
||||
<title>Tracking uncaught exceptions</title>
|
||||
<para>
|
||||
The <link linkend="support.termination.verbose">verbose
|
||||
@ -229,18 +229,18 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="debug.debug_mode" xreflabel="debug.debug_mode">
|
||||
<sect2 id="debug.debug_mode">
|
||||
<title>Debug Mode</title>
|
||||
<para> The <link linkend="manual.ext.debug_mode">Debug Mode</link>
|
||||
has compile and run-time checks for many containers.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="debug.compile_time_checks" xreflabel="debug.compile_time_checks">
|
||||
<sect2 id="debug.compile_time_checks">
|
||||
<title>Compile Time Checking</title>
|
||||
<para> The <link linkend="manual.ext.compile_checks">Compile-Time
|
||||
Checks</link> Extension has compile-time checks for many algorithms.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
</sect1>
|
||||
|
@ -17,7 +17,7 @@
|
||||
A list of user-visible changes, in chronological order
|
||||
</para>
|
||||
|
||||
<sect2 id="api.rel_300" xreflabel="api.rel_300">
|
||||
<sect2 id="api.rel_300">
|
||||
<title><constant>3.0</constant></title>
|
||||
|
||||
<para>
|
||||
@ -41,7 +41,7 @@ deactivates the warning.)
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_310" xreflabel="api.rel_310">
|
||||
<sect2 id="api.rel_310">
|
||||
<title><constant>3.1</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
@ -67,7 +67,7 @@ Removal of <filename class="headerfile">ext/tree</filename>, moved to <filename
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_320" xreflabel="api.rel_320">
|
||||
<sect2 id="api.rel_320">
|
||||
<title><constant>3.2</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
@ -91,13 +91,13 @@ Removal of <filename class="headerfile">ext/tree</filename>, moved to <filename
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_330" xreflabel="api.rel_330">
|
||||
<sect2 id="api.rel_330">
|
||||
<title><constant>3.3</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_340" xreflabel="api.rel_340">
|
||||
<sect2 id="api.rel_340">
|
||||
<title><constant>3.4</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
@ -279,7 +279,7 @@ Extension <filename class="headerfile">ext/demangle.h</filename> added.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_400" xreflabel="api.rel_400">
|
||||
<sect2 id="api.rel_400">
|
||||
<title><constant>4.0</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
@ -302,7 +302,7 @@ Removal of <filename class="headerfile">ext/demangle.h</filename>.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_410" xreflabel="api.rel_410">
|
||||
<sect2 id="api.rel_410">
|
||||
<title><constant>4.1</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
@ -326,7 +326,7 @@ types, namespace <code>pb_assoc</code>.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_420" xreflabel="api.rel_420">
|
||||
<sect2 id="api.rel_420">
|
||||
<title><constant>4.2</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
@ -362,7 +362,7 @@ and <filename class="headerfile">ext/throw_allocator.h</filename>.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="api.rel_430" xreflabel="api.rel_430">
|
||||
<sect2 id="api.rel_430">
|
||||
<title><constant>4.3</constant></title>
|
||||
<para>
|
||||
</para>
|
||||
|
@ -1,4 +1,4 @@
|
||||
<sect1 id="appendix.porting.internals" xreflabel="internals">
|
||||
<sect1 id="appendix.porting.internals" xreflabel="Portin Internals">
|
||||
<?dbhtml filename="internals.html"?>
|
||||
|
||||
<sect1info>
|
||||
@ -45,7 +45,7 @@ a "host." The comment at the top of <code>configure.ac</code> explains why.)
|
||||
</para>
|
||||
|
||||
|
||||
<sect2 id="internals.os" xreflabel="internals.os">
|
||||
<sect2 id="internals.os">
|
||||
<title>Operating System</title>
|
||||
|
||||
<para>If you are porting to a new operating system (as opposed to a new chip
|
||||
@ -154,7 +154,7 @@ starting point.
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="internals.cpu" xreflabel="internals.cpu">
|
||||
<sect2 id="internals.cpu">
|
||||
<title>CPU</title>
|
||||
|
||||
<para>If you are porting to a new chip (as opposed to a new operating system
|
||||
@ -186,7 +186,7 @@ appropriate for your chip.
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="internals.char_types" xreflabel="internals.char_types">
|
||||
<sect2 id="internals.char_types">
|
||||
<title>Character Types</title>
|
||||
|
||||
<para>The library requires that you provide three header files to implement
|
||||
@ -402,7 +402,7 @@ from <code>__low</code> up until <code>__high</code> into the vector given by
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="internals.thread_safety" xreflabel="internals.thread_safety">
|
||||
<sect2 id="internals.thread_safety">
|
||||
<title>Thread Safety</title>
|
||||
|
||||
<para>The C++ library string functionality requires a couple of atomic
|
||||
@ -485,7 +485,7 @@ must be equivalent to those provided here, but using atomic operations:
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="internals.numeric_limits" xreflabel="internals.numeric_limits">
|
||||
<sect2 id="internals.numeric_limits">
|
||||
<title>Numeric Limits</title>
|
||||
|
||||
<para>The C++ library requires information about the fundamental data types,
|
||||
@ -507,7 +507,7 @@ your CPU configuration directory (see <link linkend="internals.cpu">CPU</link>).
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="internals.libtool" xreflabel="internals.libtool">
|
||||
<sect2 id="internals.libtool">
|
||||
<title>Libtool</title>
|
||||
|
||||
<para>The C++ library is compiled, archived and linked with libtool.
|
||||
@ -545,4 +545,4 @@ operating system.
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
</sect1>
|
||||
|
@ -1,4 +1,4 @@
|
||||
<sect1 id="manual.localization.locales.locale" xreflabel="locale">
|
||||
<sect1 id="manual.localization.locales.locale" xreflabel="Locale">
|
||||
|
||||
<sect1info>
|
||||
<keywordset>
|
||||
@ -19,7 +19,7 @@ classes id, facet, and the reference-counted implementation object,
|
||||
class _Impl.
|
||||
</para>
|
||||
|
||||
<sect2 id="locales.locale.req" xreflabel="locales.locale.req">
|
||||
<sect2 id="locales.locale.req">
|
||||
<title>Requirements</title>
|
||||
|
||||
<para>
|
||||
@ -89,7 +89,7 @@ Provides an index for looking up specific facets.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="locales.locale.design" xreflabel="locales.locale.design">
|
||||
<sect2 id="locales.locale.design">
|
||||
<title>Design</title>
|
||||
|
||||
<para>
|
||||
@ -105,10 +105,10 @@ portability is an issue.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="locales.locale.impl" xreflabel="locales.locale.impl">
|
||||
<sect2 id="locales.locale.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<sect3 id="locale.impl.c" xreflabel="locale.impl.c">
|
||||
<sect3 id="locale.impl.c">
|
||||
<title>Interacting with "C" locales</title>
|
||||
|
||||
<itemizedlist>
|
||||
@ -470,7 +470,7 @@ global locale" (emphasis Paolo), that is:
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="locales.locale.future" xreflabel="locales.locale.future">
|
||||
<sect2 id="locales.locale.future">
|
||||
<title>Future</title>
|
||||
|
||||
<itemizedlist>
|
||||
@ -510,7 +510,7 @@ global locale" (emphasis Paolo), that is:
|
||||
</itemizedlist>
|
||||
</sect2>
|
||||
|
||||
<bibliography id="locales.locale.biblio" xreflabel="locales.locale.biblio">
|
||||
<bibliography id="locales.locale.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -34,7 +34,7 @@
|
||||
</chapter>
|
||||
|
||||
<!-- Chapter 02 : Facet -->
|
||||
<chapter id="manual.localization.facet" xreflabel="facet">
|
||||
<chapter id="manual.localization.facet" xreflabel="Facets">
|
||||
<?dbhtml filename="facets.html"?>
|
||||
<title>Facets aka Categories</title>
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
<sect1 id="manual.localization.facet.messages" xreflabel="messages">
|
||||
<sect1 id="manual.localization.facet.messages" xreflabel="Messages">
|
||||
<?dbhtml filename="messages.html"?>
|
||||
|
||||
<sect1info>
|
||||
@ -20,7 +20,7 @@ equivalent to Java's java.text.MessageFormat .using either GNU gettext
|
||||
or IEEE 1003.1-200 functions.
|
||||
</para>
|
||||
|
||||
<sect2 id="facet.messages.req" xreflabel="facet.messages.req">
|
||||
<sect2 id="facet.messages.req">
|
||||
<title>Requirements</title>
|
||||
|
||||
<para>
|
||||
@ -108,7 +108,7 @@ be found, returns dfault.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.messages.design" xreflabel="facet.messages.design">
|
||||
<sect2 id="facet.messages.design">
|
||||
<title>Design</title>
|
||||
|
||||
<para>
|
||||
@ -157,10 +157,10 @@ other, explicitly named locales.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.messages.impl" xreflabel="facet.messages.impl">
|
||||
<sect2 id="facet.messages.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<sect3 id="messages.impl.models" xreflabel="messages.impl.models">
|
||||
<sect3 id="messages.impl.models">
|
||||
<title>Models</title>
|
||||
<para>
|
||||
This is a relatively simple class, on the face of it. The standard
|
||||
@ -228,7 +228,7 @@ model.
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="messages.impl.gnu" xreflabel="messages.impl.gnu">
|
||||
<sect3 id="messages.impl.gnu">
|
||||
<title>The GNU Model</title>
|
||||
|
||||
<para>
|
||||
@ -321,7 +321,7 @@ model.
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.messages.use" xreflabel="facet.messages.use">
|
||||
<sect2 id="facet.messages.use">
|
||||
<title>Use</title>
|
||||
<para>
|
||||
A simple example using the GNU model of message conversion.
|
||||
@ -351,7 +351,7 @@ void test01()
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="facet.messages.future" xreflabel="facet.messages.future">
|
||||
<sect2 id="facet.messages.future">
|
||||
<title>Future</title>
|
||||
|
||||
<itemizedlist>
|
||||
@ -438,7 +438,7 @@ void test01()
|
||||
|
||||
</sect2>
|
||||
|
||||
<bibliography id="facet.messages.biblio" xreflabel="facet.messages.biblio">
|
||||
<bibliography id="facet.messages.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -17,7 +17,7 @@
|
||||
<para>
|
||||
</para>
|
||||
|
||||
<sect2 id="allocator.mt.intro" xreflabel="allocator.mt.intro">
|
||||
<sect2 id="allocator.mt.intro">
|
||||
<title>Intro</title>
|
||||
|
||||
<para>
|
||||
@ -43,10 +43,10 @@
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="allocator.mt.design_issues" xreflabel="allocator.mt.design_issues">
|
||||
<sect2 id="allocator.mt.design_issues">
|
||||
<title>Design Issues</title>
|
||||
|
||||
<sect3 id="allocator.mt.overview" xreflabel="allocator.mt.overview">
|
||||
<sect3 id="allocator.mt.overview">
|
||||
<title>Overview</title>
|
||||
|
||||
|
||||
@ -107,11 +107,11 @@ classes, namely member functions <code>allocate</code> and
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.mt.impl" xreflabel="allocator.mt.impl">
|
||||
<sect2 id="allocator.mt.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
|
||||
<sect3 id="allocator.mt.tune" xreflabel="allocator.mt.tune">
|
||||
<sect3 id="allocator.mt.tune">
|
||||
<title>Tunable Parameters</title>
|
||||
|
||||
<para>Certain allocation parameters can be modified, or tuned. There
|
||||
@ -168,7 +168,7 @@ int main()
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="allocator.mt.init" xreflabel="allocator.mt.init">
|
||||
<sect3 id="allocator.mt.init">
|
||||
<title>Initialization</title>
|
||||
|
||||
<para>
|
||||
@ -278,7 +278,7 @@ The _S_initialize() function:
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="allocator.mt.deallocation" xreflabel="allocator.mt.deallocation">
|
||||
<sect3 id="allocator.mt.deallocation">
|
||||
<title>Deallocation Notes</title>
|
||||
|
||||
<para> Notes about deallocation. This allocator does not explicitly
|
||||
@ -316,7 +316,7 @@ pool that frees memory, see the following
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.mt.example_single" xreflabel="allocator.mt.example_single">
|
||||
<sect2 id="allocator.mt.example_single">
|
||||
<title>Single Thread Example</title>
|
||||
|
||||
<para>
|
||||
@ -410,7 +410,7 @@ faster than maintaining a set of "last pointers" as well.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="allocator.mt.example_multi" xreflabel="allocator.mt.example_multi">
|
||||
<sect2 id="allocator.mt.example_multi">
|
||||
<title>Multiple Thread Example</title>
|
||||
|
||||
<para>
|
||||
@ -551,4 +551,4 @@ and forth" between freelists.
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
</sect1>
|
||||
|
@ -105,7 +105,7 @@ It might work with other compilers, though.</para>
|
||||
<sect1 id="manual.ext.parallel_mode.using" xreflabel="Using">
|
||||
<title>Using</title>
|
||||
|
||||
<sect2 id="parallel_mode.using.prereq_flags" xreflabel="using.prereq_flags">
|
||||
<sect2 id="parallel_mode.using.prereq_flags">
|
||||
<title>Prerequisite Compiler Flags</title>
|
||||
|
||||
<para>
|
||||
@ -131,7 +131,7 @@ In addition, hardware that supports atomic operations and a compiler
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="parallel_mode.using.parallel_mode" xreflabel="using.parallel_mode">
|
||||
<sect2 id="parallel_mode.using.parallel_mode">
|
||||
<title>Using Parallel Mode</title>
|
||||
|
||||
<para>
|
||||
@ -156,7 +156,7 @@ In addition, hardware that supports atomic operations and a compiler
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="parallel_mode.using.specific" xreflabel="using.specific">
|
||||
<sect2 id="parallel_mode.using.specific">
|
||||
<title>Using Specific Parallel Components</title>
|
||||
|
||||
<para>When it is not feasible to recompile your entire application, or
|
||||
@ -832,7 +832,7 @@ the generated source documentation.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<bibliography id="parallel_mode.biblio" xreflabel="parallel_mode.biblio">
|
||||
<bibliography id="parallel_mode.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
|
@ -19,7 +19,7 @@ The shared_ptr class template stores a pointer, usually obtained via new,
|
||||
and implements shared ownership semantics.
|
||||
</para>
|
||||
|
||||
<sect2 id="shared_ptr.req" xreflabel="shared_ptr.req">
|
||||
<sect2 id="shared_ptr.req">
|
||||
<title>Requirements</title>
|
||||
|
||||
<para>
|
||||
@ -43,7 +43,7 @@ and implements shared ownership semantics.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shared_ptr.design_issues" xreflabel="shared_ptr.design_issues">
|
||||
<sect2 id="shared_ptr.design_issues">
|
||||
<title>Design Issues</title>
|
||||
|
||||
|
||||
@ -67,7 +67,7 @@ technique known as type erasure.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shared_ptr.impl" xreflabel="shared_ptr.impl">
|
||||
<sect2 id="shared_ptr.impl">
|
||||
<title>Implementation</title>
|
||||
|
||||
<sect3>
|
||||
@ -414,7 +414,7 @@ the following types, depending on how the shared_ptr is constructed.
|
||||
</listitem>
|
||||
-->
|
||||
|
||||
<sect2 id="shared_ptr.using" xreflabel="shared_ptr.using">
|
||||
<sect2 id="shared_ptr.using">
|
||||
<title>Use</title>
|
||||
|
||||
<sect3>
|
||||
@ -485,7 +485,7 @@ the following types, depending on how the shared_ptr is constructed.
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="shared_ptr.ack" xreflabel="shared_ptr.ack">
|
||||
<sect2 id="shared_ptr.ack">
|
||||
<title>Acknowledgments</title>
|
||||
|
||||
<para>
|
||||
@ -497,7 +497,7 @@ the following types, depending on how the shared_ptr is constructed.
|
||||
|
||||
</sect2>
|
||||
|
||||
<bibliography id="shared_ptr.biblio" xreflabel="shared_ptr.biblio">
|
||||
<bibliography id="shared_ptr.biblio">
|
||||
<title>Bibliography</title>
|
||||
|
||||
<biblioentry>
|
||||
@ -577,4 +577,4 @@ the following types, depending on how the shared_ptr is constructed.
|
||||
|
||||
</bibliography>
|
||||
|
||||
</sect1>
|
||||
</sect1>
|
||||
|
@ -3,7 +3,7 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
|
||||
[ ]>
|
||||
|
||||
<book id="manual-index" xreflabel="manual-index">
|
||||
<book id="manual-index">
|
||||
<?dbhtml dir="manual"?>
|
||||
<?dbhtml filename="spine.html"?>
|
||||
<title>The GNU C++ Library</title>
|
||||
|
@ -34,7 +34,7 @@ The libstdc++ testsuite includes testing for standard conformance,
|
||||
regressions, ABI, and performance.
|
||||
</para>
|
||||
|
||||
<sect2 id="test.organization" xreflabel="test.organization">
|
||||
<sect2 id="test.organization" xreflabel="Test Organization">
|
||||
<title>Organization</title>
|
||||
|
||||
<sect3 id="test.organization.layout" xreflabel="Directory Layout">
|
||||
@ -227,10 +227,10 @@ cat 27_io/objects/char/3_xin.in | a.out
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="test.run" xreflabel="test.run">
|
||||
<sect2 id="test.run" xreflabel="Running the Testsuite">
|
||||
<title>Running the Testsuite</title>
|
||||
|
||||
<sect3 id="test.run.basic" xreflabel="test.run.basic">
|
||||
<sect3 id="test.run.basic">
|
||||
<title>Basic</title>
|
||||
|
||||
<para>
|
||||
@ -267,7 +267,7 @@ cat 27_io/objects/char/3_xin.in | a.out
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="test.run.variations" xreflabel="test.run.variations">
|
||||
<sect3 id="test.run.variations">
|
||||
<title>Variations</title>
|
||||
<para>
|
||||
There are several options for running tests, including testing
|
||||
@ -470,7 +470,7 @@ runtest --tool libstdc++ --srcdir=/path/to/gcc/libstdc++-v3/testsuite
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="test.run.permutations" xreflabel="test.run.permutations">
|
||||
<sect3 id="test.run.permutations">
|
||||
<title>Permutations</title>
|
||||
<para>
|
||||
To run the libstdc++ test suite under the <link
|
||||
@ -501,7 +501,7 @@ runtest --tool libstdc++ --srcdir=/path/to/gcc/libstdc++-v3/testsuite
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="test.new_tests" xreflabel="test.new_tests">
|
||||
<sect2 id="test.new_tests">
|
||||
<title>Writing a new test case</title>
|
||||
|
||||
<para>
|
||||
@ -636,7 +636,7 @@ up in the normal.exp file.
|
||||
<sect2 id="test.harness" xreflabel="Test Harness and Utilities">
|
||||
<title>Test Harness and Utilities</title>
|
||||
|
||||
<sect3 id="test.harness.dejagnu" xreflabel="test.harness.dejagnu">
|
||||
<sect3 id="test.harness.dejagnu">
|
||||
<title>Dejagnu Harness Details</title>
|
||||
<para>
|
||||
Underlying details of testing for conformance and regressions are
|
||||
@ -682,7 +682,7 @@ only default variables.
|
||||
|
||||
</sect3>
|
||||
|
||||
<sect3 id="test.harness.utils" xreflabel="test.utils">
|
||||
<sect3 id="test.harness.utils">
|
||||
<title>Utilities</title>
|
||||
<para>
|
||||
</para>
|
||||
|
@ -22,7 +22,7 @@
|
||||
<year>2008</year>
|
||||
<year>2009</year>
|
||||
<holder>
|
||||
<ulink url="http://fsf.org">FSF</ulink>
|
||||
<ulink url="http://www.fsf.org">FSF</ulink>
|
||||
</holder>
|
||||
</copyright>
|
||||
&authors;
|
||||
|
Loading…
Reference in New Issue
Block a user