diff options
Diffstat (limited to 'libstdc++-v3/doc/html/17_intro/api.html')
| -rw-r--r-- | libstdc++-v3/doc/html/17_intro/api.html | 290 |
1 files changed, 290 insertions, 0 deletions
diff --git a/libstdc++-v3/doc/html/17_intro/api.html b/libstdc++-v3/doc/html/17_intro/api.html new file mode 100644 index 00000000000..1d1e36d90d2 --- /dev/null +++ b/libstdc++-v3/doc/html/17_intro/api.html @@ -0,0 +1,290 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!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" xml:lang="en" lang="en"> +<head> + <meta name="AUTHOR" content="bkoz@gcc.gnu.org (Benjamin Kosnik)" /> + <meta name="KEYWORDS" content="C++, libstdc++, API, evolution, deprecate" /> + <meta name="DESCRIPTION" content="API evolution and deprecation history" /> + <meta name="GENERATOR" content="emacs and ten fingers" /> + <title>API Evolution and Deprecation History</title> +<link rel="StyleSheet" href="lib3styles.css" type="text/css" /> +<link rel="Start" href="documentation.html" type="text/html" + title="GNU C++ Standard Library" /> +<link rel="Copyright" href="17_intro/license.html" type="text/html" /> +</head> +<body> + +<h1 class="centered"><a name="top">API Evolution and Deprecation History</a></h1> + +<p class="fineprint"><em> + The latest version of this document is always available at + <a href="http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/api.html"> + http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/api.html</a>. +</em></p> + +<p><em> + To the <a href="http://gcc.gnu.org/libstdc++/">libstdc++ homepage</a>. +</em></p> + +<!-- ####################################################### --> + +<hr /> +<h3 class="left"> + <a name="intro">API Evolution, Deprecation, and History of User Visible Changes</a> +</h3> + +<p> A list of user-visible changes, by release version. +</p> + +<h3 class="left"> + <a name="3.0">3.0</a> +</h3> + +<p> +Extensions moved to <code>include/ext</code>. +</p> + +<p> +Include files from the SGI/HP sources that pre-date the ISO standard +are added. These files are placed into +the <code>include/backward</code> directory and a deprecated warning +is added that notifies on inclusion (<code>-Wno-deprecated</code> +deactivates the warning.) +</p> + +<p>Deprecated include <backward/strstream> added.</p> + +<p>Removal of include <builtinbuf.h>, <indstream.h>, <parsestream.h>, <PlotFile.h>, <SFile.h>, <stdiostream.h>, and <stream.h>.</p> + + +<h3 class="left"> + <a name="3.1">3.1</a> +</h3> + +<p> +Extensions from SGI/HP moved from <code>namespace std</code> +to <code>namespace __gnu_cxx</code>. As part of this, the following +new includes are +added: <ext/algorithm>, <ext/functional>, <ext/iterator>, <ext/memory>, and <ext/numeric>. +</p> + +<p> +Extensions to <code>basic_filebuf</code> introduced: <code>__gnu_cxx::enc_filebuf</code>, and <code>__gnu_cxx::stdio_filebuf</code>. +</p> + +<p> +Extensions to tree data structures added in <ext/rb_tree>. +</p> + +<p> +Removal of <ext/tree>, moved to <backward/tree.h>. +</p> + + +<h3 class="left"> + <a name="3.2">3.2</a> +</h3> +<p>Symbol versioning introduced for shared library.</p> + +<p>Removal of include <backward/strstream.h>.</p> + +<h3 class="left"> + <a name="3.3">3.3</a> +</h3> +<p>Allocator changes. Change <code>__malloc_alloc</code> to <code>malloc_allocator</code> and <code>__new_alloc</code> to <code>new_allocator</code>. </p> + +<p>Error handling in iostreams cleaned up, made consistent. </p> + + +<h3 class="left"> + <a name="3.4">3.4</a> +</h3> +<p> +Large file support. +</p> + +<p> Extensions for generic characters and <code>char_traits</code> added in <ext/pod_char_traits.h>. +</p> + +<p> +Support for <code>wchar_t</code> specializations of <code>basic_filebuf</code> enhanced to support <code>UTF-8</code> and <code>Unicode</code>, depending on host. More hosts support basic <code>wchar_t</code> functionality. +</p> + +<p> +Support for <code>char_traits</code> beyond builtin types. +</p> + +<p> +Conformant <code>allocator</code> class and usage in containers. As +part of this, the following extensions are +added: <ext/bitmap_allocator.h>, <ext/debug_allocator.h>, <ext/mt_allocator.h>, <ext/malloc_allocator.h>,<ext/new_allocator.h>, <ext/pool_allocator.h>. +</p> + + +<p> +Debug mode first appears. +</p> + +<p> +PCH support. +</p> + +<p> +Macro guard for libstdc++ changed, from _GLIBCPP_ to _GLIBCXX_. +</p> + +<p> +Extension <ext/stdio_sync_filebuf.h> added. +</p> + +<p> +Extension <ext/demangle.h> added. +</p> + + +<h3 class="left"> + <a name="4.0">4.0</a> +</h3> +<p> +TR1 features first appear. +</p> + +<p> +Extension allocator <ext/array_allocator.h> added. +</p> + +<p> +Extension <code>codecvt</code> specializations moved to <ext/codecvt_specializations.h>. +</p> + +<p> +Removal of <ext/demangle.h>. +</p> + + +<h3 class="left"> + <a name="4.1">4.1</a> +</h3> + +<p> +Removal of <cassert> from all standard headers: now has to be explicitly included for <code>std::assert</code> calls. +</p> + +<p> Extensions for policy-based data structures first added. New includes, +types, namespace <code>pb_assoc</code>. +</p> + + + +<p> Extensions for typelists added in <ext/typelist.h>. +</p> + +<p> Extension for policy-based <code>basic_string</code> first added: <code>__gnu_cxx::__versa_string</code> in <ext/vstring.h>. +</p> + +<h3 class="left"> + <a name="4.2">4.2</a> +</h3> + +<p> Default visibility attributes applied to <code>namespace std</code>. Support for <code>-fvisibility</code>. +</p> + +<p>TR1 <random>, <complex>, and C compatibility headers added.</p> + +<p> Extensions for concurrent programming consolidated +into <ext/concurrence.h> and <ext/atomicity.h>, +including change of namespace to <code>__gnu_cxx</code> in some +cases. Added types +include <code>_Lock_policy</code>, <code>__concurrence_lock_error</code>, <code>__concurrence_unlock_error</code>, <code>__mutex</code>, <code>__scoped_lock</code>.</p> + +<p> Extensions for type traits consolidated +into <ext/type_traits.h>. Additional traits are added +(<code>__conditional_type</code>, <code>__enable_if</code>, others.) +</p> + +<p> Extensions for policy-based data structures revised. New includes, +types, namespace moved to <code>__pb_ds</code>. +</p> + +<p> Extensions for debug mode modified: now nested in <code>namespace +std::__debug</code> and extensions in <code>namespace +__gnu_cxx::__debug</code>.</p> + +<p> Extensions added: <ext/typelist.h> +and <ext/throw_allocator.h>. +</p> + +<h3 class="left"> + <a name="4.3">4.3</a> +</h3> + +<p> +C++0X features first appear. +</p> + +<p>TR1 <regex> and <cmath>'s mathematical special function added.</p> + +<p> +Backward include edit. +</p> +<ul> + <li> Removed: <algobase.h> <algo.h> <alloc.h> <bvector.h> <complex.h> +defalloc.h> <deque.h> <fstream.h> <function.h> <hash_map.h> <hash_set.h> +hashtable.h> <heap.h> <iomanip.h> <iostream.h> <istream.h> <iterator.h> +list.h> <map.h> <multimap.h> <multiset.h> <new.h> <ostream.h> <pair.h> <queue.h> <rope.h> <set.h> <slist.h> <stack.h> <streambuf.h> <stream.h> <tempbuf.h> +<tree.h> <vector.h> + </li> + <li> Added: <hash_map> and <hash_set></li> + <li> Added in C++0x: <auto_ptr.h> and <binders.h></li> +</ul> + +<p> +Header dependency streamlining. +</p> + +<ul> + <li><algorithm> no longer includes <climits>, <cstring>, or <iosfwd> </li> + <li><bitset> no longer includes <istream> or <ostream>, adds <iosfwd> </li> + <li><functional> no longer includes <cstddef></li> + <li><iomanip> no longer includes <istream>, <istream>, or <functional>, adds <ioswd> </li> + <li><numeric> no longer includes <iterator></li> + <li><string> no longer includes <algorithm> or <memory></li> + + <li><valarray> no longer includes <numeric> or <cstdlib></li> + <li><tr1/hashtable> no longer includes <memory> or <functional></li> + <li><tr1/memory> no longer includes <algorithm></li> + <li><tr1/random> no longer includes <algorithm> or <fstream></li> +</ul> + +<p> +Debug mode for <unordered_map> and <unordered_set>. +</p> + +<p> +Parallel mode first appears. +</p> + +<p>Variadic template implementations of items in <tuple> and + <functional>. +</p> + +<p>Default <code>what</code> implementations give more elaborate + exception strings for <code>bad_cast</code>, + <code>bad_typeid</code>, <code>bad_exception</code>, and + <code>bad_alloc</code>. +</p> + +<p> +PCH binary files no longer installed. Instead, the source files are installed. +</p> + +<p> +Namespace pb_ds moved to __gnu_pb_ds. +</p> + +</body> +</html> + |

