This table is based on the table of contents of ISO/IEC DTR 19768 Doc No: N1836=05-0096 Date: 2005-06-24 Draft Technical Report on C++ Library Extensions
In this implementation the header names are prefixed by
tr1/
, for instance <tr1/functional>
,
<tr1/memory>
, and so on.
This page describes the TR1 support in mainline GCC CVS, not in any particular release.
Section | Description | Done | Broken | Missing | Comments |
2 | General Utilities | ||||
2.1 | Reference wrappers | done | |||
2.1.1 | Additions to header <functional> synopsis |
done | |||
2.1.2 | Class template reference_wrapper |
done | |||
2.1.2.1 | reference_wrapper construct/copy/destroy |
done | |||
2.1.2.2 | reference_wrapper assignment |
done | |||
2.1.2.3 | reference_wrapper access |
done | |||
2.1.2.4 | reference_wrapper invocation |
done | |||
2.1.2.5 | reference_wrapper helper functions |
done | |||
2.2 | Smart pointers | done | |||
2.2.1 | Additions to header <memory> synopsis |
done | |||
2.2.2 | Class bad_weak_ptr |
done | |||
2.2.3 | Class template shared_ptr |
done | 1 | ||
2.2.3.1 | shared_ptr constructors |
done | |||
2.2.3.2 | shared_ptr destructor |
done | |||
2.2.3.3 | shared_ptr assignment |
done | |||
2.2.3.4 | shared_ptr modifiers |
done | |||
2.2.3.5 | shared_ptr observers |
done | |||
2.2.3.6 | shared_ptr comparison |
done | |||
2.2.3.7 | shared_ptr I/O |
done | |||
2.2.3.8 | shared_ptr specialized algorithms |
done | |||
2.2.3.9 | shared_ptr casts |
done | |||
2.2.3.10 | get_deleter |
done | |||
2.2.4 | Class template weak_ptr |
done | |||
2.2.4.1 | weak_ptr constructors |
done | |||
2.2.4.2 | weak_ptr destructor |
done | |||
2.2.4.3 | weak_ptr assignment |
done | |||
2.2.4.4 | weak_ptr modifiers |
done | |||
2.2.4.5 | weak_ptr observers |
done | |||
2.2.4.6 | weak_ptr comparison |
done | |||
2.2.4.7 | weak_ptr specialized algorithms |
done | |||
2.2.5 | Class template enable_shared_from_this |
done | |||
3 | Function objects | ||||
3.1 | Definitions | done | |||
3.2 | Additions to <functional> synopsis |
done | |||
3.3 | Requirements | done | |||
3.4 | Function return types | done | |||
3.5 | Function template mem_fn |
done | |||
3.6 | Function object binders | done | |||
3.6.1 | Class template is_bind_expression |
done | |||
3.6.2 | Class template is_placeholder |
done | |||
3.6.3 | Function template bind |
done | |||
3.6.4 | Placeholders | done | |||
3.7 | Polymorphic function wrappers | done | |||
3.7.1 | Class bad_function_call |
done | |||
3.7.1.1 | bad_function_call constructor |
done | |||
3.7.2 | Class template function |
done | |||
3.7.2.1 | function construct/copy/destroy |
done | |||
3.7.2.2 | function modifiers |
done | |||
3.7.2.3 | function capacity |
done | |||
3.7.2.4 | function invocation |
done | |||
3.7.2.5 | function target access |
done | |||
3.7.2.6 | undefined operators | done | |||
3.7.2.7 | null pointer comparison operators | done | |||
3.7.2.8 | specialized algorithms | done | |||
4 | Metaprogramming and type traits | ||||
4.1 | Requirements | done | |||
4.2 | Header <type_traits> synopsis |
done | |||
4.3 | Helper classes | done | |||
4.4 | General Requirements | done | |||
4.5 | Unary Type Traits | done | |||
4.5.1 | Primary Type Categories | done | |||
4.5.2 | Composite type traits | done | |||
4.5.3 | Type properties | done | |||
4.6 | Relationships between types | done | |||
4.7 | Transformations between types | done | |||
4.7.1 | Const-volatile modifications | done | |||
4.7.2 | Reference modifications | done | |||
4.7.3 | Array modifications | done | |||
4.7.4 | Pointer modifications | done | |||
4.8 | Other transformations | done | |||
4.9 | Implementation requirements | done | |||
5 | Numerical facilities | ||||
5.1 | Random number generation | missing | |||
5.1.1 | Requirements | missing | |||
5.1.2 | Header <random> synopsis |
missing | |||
5.1.3 | Class template variate_generator |
missing | |||
5.1.4 | Random number engine class templates | missing | |||
5.1.4.1 | Class template linear_congruential |
missing | |||
5.1.4.2 | Class template mersenne_twister |
missing | |||
5.1.4.3 | Class template subtract_with_carry |
missing | |||
5.1.4.4 | Class template subtract_with_carry_01 |
missing | |||
5.1.4.5 | Class template discard_block |
missing | |||
5.1.4.6 | Class template xor_combine |
missing | |||
5.1.5 | Engines with predefined parameters | missing | |||
5.1.6 | Class random_device |
missing | |||
5.1.7 | Random distribution class templates | missing | |||
5.1.7.1 | Class template uniform_int |
missing | |||
5.1.7.2 | Class bernoulli_distribution |
missing | |||
5.1.7.3 | Class template geometric_distribution |
missing | |||
5.1.7.4 | Class template poisson_distribution |
missing | |||
5.1.7.5 | Class template binomial_distribution |
missing | |||
5.1.7.6 | Class template uniform_real |
missing | |||
5.1.7.7 | Class template exponential_distribution |
missing | |||
5.1.7.8 | Class template normal_distribution |
missing | |||
5.1.7.9 | Class template gamma_distribution |
missing | |||
5.2 | Mathematical special functions | missing | |||
5.2.1 | Additions to header <cmath> synopsis |
missing | |||
5.2.1.1 | associated Laguerre polynomials | missing | |||
5.2.1.2 | associated Legendre functions | missing | |||
5.2.1.3 | beta function | missing | |||
5.2.1.4 | (complete) elliptic integral of the first kind | missing | |||
5.2.1.5 | (complete) elliptic integral of the second kind | missing | |||
5.2.1.6 | (complete) elliptic integral of the third kind | missing | |||
5.2.1.7 | confluent hypergeometric functions | missing | |||
5.2.1.8 | regular modified cylindrical Bessel functions | missing | |||
5.2.1.9 | cylindrical Bessel functions (of the first kind) | missing | |||
5.2.1.10 | irregular modified cylindrical Bessel functions | missing | |||
5.2.1.11 | cylindrical Neumann functions | missing | |||
5.2.1.12 | (incomplete) elliptic integral of the first kind | missing | |||
5.2.1.13 | (incomplete) elliptic integral of the second kind | missing | |||
5.2.1.14 | (incomplete) elliptic integral of the third kind | missing | |||
5.2.1.15 | exponential integral | missing | |||
5.2.1.16 | Hermite polynomials | missing | |||
5.2.1.17 | hypergeometric functions | missing | |||
5.2.1.18 | Laguerre polynomials | missing | |||
5.2.1.19 | Legendre polynomials | missing | |||
5.2.1.20 | Riemann zeta function | missing | |||
5.2.1.21 | spherical Bessel functions (of the first kind) | missing | |||
5.2.1.22 | spherical associated Legendre functions | missing | |||
5.2.1.23 | spherical Neumann functions | missing | |||
5.2.2 | Additions to header <math.h> synopsis |
missing | |||
6 | Containers | ||||
6.1 | Tuple types | done | |||
6.1.1 | Header <tuple> synopsis |
done | |||
6.1.2 | Additions to header <utility> synopsis |
done | |||
6.1.3 | Class template tuple |
done | |||
6.1.3.1 | Construction | done | |||
6.1.3.2 | Tuple creation functions | done | |||
6.1.3.3 | Tuple helper classes | done | |||
6.1.3.4 | Element access | done | |||
6.1.3.5 | Relational operators | done | |||
6.1.4 | Pairs | done | |||
6.2 | Fixed size array | done | |||
6.2.1 | Header <array> synopsis |
done | |||
6.2.2 | Class template array |
done | |||
6.2.2.1 | array constructors, copy, and assignment |
done | |||
6.2.2.2 | array specialized algorithms |
done | |||
6.2.2.3 | array size |
done | |||
6.2.2.4 | Zero sized array s |
done | |||
6.2.2.5 | Tuple interface to class template array |
done | |||
6.3 | Unordered associative containers | done | |||
6.3.1 | Unordered associative container requirements | done | |||
6.3.1.1 | Exception safety guarantees | done | |||
6.3.2 | Additions to header <functional> synopsis |
done | |||
6.3.3 | Class template hash |
done | |||
6.3.4 | Unordered associative container classes | done | |||
6.3.4.1 | Header <unordered_set> synopsis |
done | |||
6.3.4.2 | Header <unordered_map> synopsis |
done | |||
6.3.4.3 | Class template unordered_set |
done | |||
6.3.4.3.1 | unordered_set constructors |
done | |||
6.3.4.3.2 | unordered_set swap |
done | |||
6.3.4.4 | Class template unordered_map |
done | |||
6.3.4.4.1 | unordered_map constructors |
done | |||
6.3.4.4.2 | unordered_map element access |
done | |||
6.3.4.4.3 | unordered_map swap |
done | |||
6.3.4.5 | Class template unordered_multiset |
done | |||
6.3.4.5.1 | unordered_multiset constructors |
done | |||
6.3.4.5.2 | unordered_multiset swap |
done | |||
6.3.4.6 | Class template unordered_multimap |
done | |||
6.3.4.6.1 | unordered_multimap constructors |
done | |||
6.3.4.6.2 | unordered_multimap swap |
done | |||
7 | Regular expressions | ||||
7.1 | Definitions | missing | |||
7.2 | Requirements | missing | |||
7.3 | Regular expressions summary | missing | |||
7.4 | Header <regex> synopsis |
missing | |||
7.5 | Namespace tr1::regex_constants |
missing | |||
7.5.1 | Bitmask Type syntax_option_type |
missing | |||
7.5.2 | Bitmask Type regex_constants::match_flag_type |
missing | |||
7.5.3 | Implementation defined error_type |
missing | |||
7.6 | Class regex_error |
missing | |||
7.7 | Class template regex_traits |
missing | |||
7.8 | Class template basic_regex |
missing | |||
7.8.1 | basic_regex constants |
missing | |||
7.8.2 | basic_regex constructors |
missing | |||
7.8.3 | basic_regex assign |
missing | |||
7.8.4 | basic_regex constant operations |
missing | |||
7.8.5 | basic_regex locale |
missing | |||
7.8.6 | basic_regex swap |
missing | |||
7.8.7 | basic_regex non-member functions |
missing | |||
7.8.7.1 | basic_regex non-member swap |
missing | |||
7.9 | Class template sub_match |
missing | |||
7.9.1 | sub_match members |
missing | |||
7.9.2 | sub_match non-member operators |
missing | |||
7.10 | Class template match_results |
missing | |||
7.10.1 | match_results constructors |
missing | |||
7.10.2 | match_results size |
missing | |||
7.10.3 | match_results element access |
missing | |||
7.10.4 | match_results formatting |
missing | |||
7.10.5 | match_results allocator |
missing | |||
7.10.6 | match_results swap |
missing | |||
7.11 | Regular expression algorithms | missing | |||
7.11.1 | exceptions | missing | |||
7.11.2 | regex_match |
missing | |||
7.11.3 | regex_search |
missing | |||
7.11.4 | regex_replace |
missing | |||
7.12 | Regular expression Iterators | missing | |||
7.12.1 | Class template regex_iterator |
missing | |||
7.12.1.1 | regex_iterator constructors |
missing | |||
7.12.1.2 | regex_iterator comparisons |
missing | |||
7.12.1.3 | regex_iterator dereference |
missing | |||
7.12.1.4 | regex_iterator increment |
missing | |||
7.12.2 | Class template regex_token_iterator |
missing | |||
7.12.2.1 | regex_token_iterator constructors |
missing | |||
7.12.2.2 | regex_token_iterator comparisons |
missing | |||
7.12.2.3 | regex_token_iterator dereference |
missing | |||
7.12.2.4 | regex_token_iterator increment |
missing | |||
7.13 | Modified ECMAScript regular expression grammar | missing | |||
8 | C compatibility | ||||
8.1 | Additions to header <complex> |
done | |||
8.1.1 | Synopsis | done | |||
8.1.2 | Function acos |
done | |||
8.1.3 | Function asin |
done | |||
8.1.4 | Function atan |
done | |||
8.1.5 | Function acosh |
done | |||
8.1.6 | Function asinh |
done | |||
8.1.7 | Function atanh |
done | |||
8.1.8 | Function fabs |
done | |||
8.1.9 | Additional Overloads | done | |||
8.2 | Header <ccomplex> |
missing | DR 551 | ||
8.3 | Header <complex.h> |
missing | DR 551 | ||
8.4 | Additions to header <cctype> |
done | |||
8.4.1 | Synopsis | done | |||
8.4.2 | Function isblank |
done | |||
8.5 | Additions to header <ctype.h> |
done | |||
8.6 | Header <cfenv> |
done | |||
8.6.1 | Synopsis | done | |||
8.6.2 | Definitions | done | |||
8.7 | Header <fenv.h> |
done | |||
8.8 | Additions to header <cfloat> |
done | |||
8.9 | Additions to header <float.h> |
done | |||
8.10 | Additions to header <ios> |
missing | |||
8.10.1 | Synopsis | missing | |||
8.10.2 | Function hexfloat |
missing | |||
8.11 | Header <cinttypes> |
done | |||
8.11.1 | Synopsis | done | DR 557 | ||
8.11.2 | Definitions | done | |||
8.12 | Header <inttypes.h> |
done | |||
8.13 | Additions to header <climits> |
done | |||
8.14 | Additions to header <limits.h> |
done | |||
8.15 | Additions to header <locale> |
missing | |||
8.16 | Additions to header <cmath> |
done | |||
8.16.1 | Synopsis | done | |||
8.16.2 | Definitions | done | |||
8.16.3 | Function template definitions | done | |||
8.16.4 | Additional overloads | done | DR 568; DR 550 | ||
8.17 | Additions to header <math.h> |
done | |||
8.18 | Additions to header <cstdarg> |
done | |||
8.19 | Additions to header <stdarg.h> |
done | |||
8.20 | The header <cstdbool> |
done | |||
8.21 | The header <stdbool.h> |
done | |||
8.22 | The header <cstdint> |
done | |||
8.22.1 | Synopsis | done | |||
8.22.2 | Definitions | done | |||
8.23 | The header <stdint.h> |
done | |||
8.24 | Additions to header <cstdio> |
done | |||
8.24.1 | Synopsis | done | |||
8.24.2 | Definitions | done | |||
8.24.3 | Additional format specifiers | done | C library responsability | ||
8.24.4 | Additions to header <stdio.h> |
done | |||
8.25 | Additions to header <cstdlib> |
done | |||
8.25.1 | Synopsis | done | |||
8.25.2 | Definitions | done | |||
8.25.3 | Function abs |
done | |||
8.25.4 | Function div |
done | |||
8.26 | Additions to header <stdlib.h> |
done | |||
8.27 | Header <ctgmath> |
done | DR 551 | ||
8.28 | Header <tgmath.h> |
done | DR 551 | ||
8.29 | Additions to header <ctime> |
done | C library responsability | ||
8.30 | Additions to header <cwchar> |
done | |||
8.30.1 | Synopsis | done | |||
8.30.2 | Definitions | done | |||
8.30.3 | Additional wide format specifiers | done | C library responsability | ||
8.31 | Additions to header <wchar.h> |
done | |||
8.32 | Additions to header <cwctype> |
done | |||
8.32.1 | Synopsis | done | |||
8.32.2 | Function iswblank |
done | |||
8.33 | Additions to header <wctype.h> |
done |
Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are also other ways to contact the FSF.
These pages are maintained by the GCC team.
For questions related to the use of GCC, please consult these web pages and the GCC manuals. If that fails, the gcc-help@gcc.gnu.org mailing list might help.Copyright (C) Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA.
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
Last modified 2006-03-10 |
|