diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 3a321612292..4175d697798 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,9 @@
+2008-09-09 Benjamin Kosnik
diff --git a/libstdc++-v3/doc/html/manual/abi.html b/libstdc++-v3/doc/html/manual/abi.html index 66a60c03ec9..379397e6ea0 100644 --- a/libstdc++-v3/doc/html/manual/abi.html +++ b/libstdc++-v3/doc/html/manual/abi.html @@ -34,8 +34,7 @@ version may also impact the resulting library ABI. The available configure options, and their impact on the library ABI, are documented - -here. +here.
Putting all of these ideas together results in the C++ Standard library ABI, which is the compilation of a given library API by a given compiler ABI. In a nutshell: @@ -59,13 +58,19 @@ given compiler ABI. In a nutshell:
The C++ interface has evolved throughout the history of the GNU C++ toolchain. With each release, various details have been changed so as to give distinct versions to the C++ interface. -
Extending existing, stable ABIs. Versioning gives subsequent stable -releases series libraries the ability to add new symbols and add -functionality, all the while retaining backwards compatibility with -the previous releases in the series. Note: the reverse is not true. It -is not possible to take binaries linked with the latest version of a -release series (if symbols have been added) and expect the initial -release of the series to remain link compatible. +
Extending existing, stable ABIs. Versioning gives subsequent +releases of library binaries the ability to add new symbols and add +functionality, all the while retaining compatibility with the previous +releases in the series. Thus, program binaries linked with the initial +release of a library binary will still link correctly if the library +binary is replaced by carefully-managed subsequent library +binaries. This is called forward compatibility. +
+The reverse (backwards compatibility) is not true. It is not possible +to take program binaries linked with the latest version of a library +binary in a release series (with additional symbols added), substitute +in the initial release of the library binary, and remain link +compatible.
Allows multiple, incompatible ABIs to coexist at the same time.
How can this complexity be managed? What does C++ versioning mean? @@ -76,17 +81,37 @@ release of the series to remain link compatible. easier.
The following techniques are used: -
Release versioning on the libgcc_s.so binary.
This is implemented via file names and the ELF DT_SONAME - mechanism (at least on ELF systems). It is versioned as follows: -
gcc-3.0.0: libgcc_s.so.1
gcc-3.0.1: libgcc_s.so.1
gcc-3.0.2: libgcc_s.so.1
gcc-3.0.3: libgcc_s.so.1
gcc-3.0.4: libgcc_s.so.1
gcc-3.1.0: libgcc_s.so.1
gcc-3.1.1: libgcc_s.so.1
gcc-3.2.0: libgcc_s.so.1
gcc-3.2.1: libgcc_s.so.1
gcc-3.2.2: libgcc_s.so.1
gcc-3.2.3: libgcc_s.so.1
gcc-3.3.0: libgcc_s.so.1
gcc-3.3.1: libgcc_s.so.1
gcc-3.3.2: libgcc_s.so.1
gcc-3.3.3: libgcc_s.so.1
gcc-3.4.x, gcc-4.0.x, gcc-4.1.x, gcc-4.2.x: on m68k-linux and +
Release versioning on the libgcc_s.so binary.
This is implemented via file names and the ELF
+ DT_SONAME
mechanism (at least on ELF
+ systems). It is versioned as follows:
+
gcc-3.0.0: libgcc_s.so.1
gcc-3.0.1: libgcc_s.so.1
gcc-3.0.2: libgcc_s.so.1
gcc-3.0.3: libgcc_s.so.1
gcc-3.0.4: libgcc_s.so.1
gcc-3.1.0: libgcc_s.so.1
gcc-3.1.1: libgcc_s.so.1
gcc-3.2.0: libgcc_s.so.1
gcc-3.2.1: libgcc_s.so.1
gcc-3.2.2: libgcc_s.so.1
gcc-3.2.3: libgcc_s.so.1
gcc-3.3.0: libgcc_s.so.1
gcc-3.3.1: libgcc_s.so.1
gcc-3.3.2: libgcc_s.so.1
gcc-3.3.3: libgcc_s.so.1
gcc-3.4.x, gcc-4.[0-3].x: on m68k-linux and
hppa-linux this is either libgcc_s.so.1 (when configuring
--with-sjlj-exceptions
) or libgcc_s.so.2. For all
others, this is libgcc_s.so.1.
Symbol versioning on the libgcc_s.so binary.
It is versioned with the following labels and version definitions, where the version definition is the maximum for a particular release. Labels are cumulative. If a particular release is not listed, it has the same version labels as the preceding - release.
This corresponds to the mapfile: gcc/libgcc-std.ver
gcc-3.0.0: GCC_3.0
gcc-3.3.0: GCC_3.3
gcc-3.3.1: GCC_3.3.1
gcc-3.3.2: GCC_3.3.2
gcc-3.3.4: GCC_3.3.4
gcc-3.4.0: GCC_3.4
gcc-3.4.2: GCC_3.4.2
gcc-3.4.4: GCC_3.4.4
gcc-4.0.0: GCC_4.0.0
gcc-4.1.0: GCC_4.1.0
gcc-4.2.0: GCC_4.2.0
Release versioning on the libstdc++.so binary, implemented in the same was as the libgcc_s.so binary, above.
It is versioned as follows: -
gcc-3.0.0: libstdc++.so.3.0.0
gcc-3.0.1: libstdc++.so.3.0.1
gcc-3.0.2: libstdc++.so.3.0.2
gcc-3.0.3: libstdc++.so.3.0.2 (Error should be libstdc++.so.3.0.3)
gcc-3.0.4: libstdc++.so.3.0.4
gcc-3.1.0: libstdc++.so.4.0.0
gcc-3.1.1: libstdc++.so.4.0.1
gcc-3.2.0: libstdc++.so.5.0.0
gcc-3.2.1: libstdc++.so.5.0.1
gcc-3.2.2: libstdc++.so.5.0.2
gcc-3.2.3: libstdc++.so.5.0.3 (Not strictly required)
gcc-3.3.0: libstdc++.so.5.0.4
gcc-3.3.1: libstdc++.so.5.0.5
gcc-3.3.2: libstdc++.so.5.0.5
gcc-3.3.3: libstdc++.so.5.0.5
gcc-3.4.0: libstdc++.so.6.0.0
gcc-3.4.1: libstdc++.so.6.0.1
gcc-3.4.2: libstdc++.so.6.0.2
gcc-3.4.3: libstdc++.so.6.0.3
gcc-3.4.4: libstdc++.so.6.0.3
gcc-3.4.5: libstdc++.so.6.0.3
gcc-3.4.6: libstdc++.so.6.0.3
gcc-4.0.0: libstdc++.so.6.0.4
gcc-4.0.1: libstdc++.so.6.0.5
gcc-4.0.2: libstdc++.so.6.0.6
gcc-4.0.3: libstdc++.so.6.0.7
gcc-4.1.0: libstdc++.so.6.0.7
gcc-4.1.1: libstdc++.so.6.0.8
gcc-4.1.2: libstdc++.so.6.0.8
gcc-4.2.0: libstdc++.so.6.0.9
Symbol versioning on the libstdc++.so binary.
mapfile: libstdc++/config/linker-map.gnu
It is versioned with the following labels and version + release.
This corresponds to the mapfile: gcc/libgcc-std.ver
gcc-3.0.0: GCC_3.0
gcc-3.3.0: GCC_3.3
gcc-3.3.1: GCC_3.3.1
gcc-3.3.2: GCC_3.3.2
gcc-3.3.4: GCC_3.3.4
gcc-3.4.0: GCC_3.4
gcc-3.4.2: GCC_3.4.2
gcc-3.4.4: GCC_3.4.4
gcc-4.0.0: GCC_4.0.0
gcc-4.1.0: GCC_4.1.0
gcc-4.2.0: GCC_4.2.0
gcc-4.3.0: GCC_4.3.0
+ Release versioning on the libstdc++.so binary, implemented in
+ the same was as the libgcc_s.so binary above. Listed is the
+ filename: DT_SONAME
can be deduced from
+ the filename by removing the last two period-delimited numbers. For
+ example, filename libstdc++.so.5.0.4
+ corresponds to a DT_SONAME
of
+ libstdc++.so.5
. Binaries with equivalent
+ DT_SONAME
s are forward-compatibile: in
+ the table below, releases incompatible with the previous
+ one are explicitly noted.
+
It is versioned as follows: +
gcc-3.0.0: libstdc++.so.3.0.0
gcc-3.0.1: libstdc++.so.3.0.1
gcc-3.0.2: libstdc++.so.3.0.2
gcc-3.0.3: libstdc++.so.3.0.2 (See Note 1)
gcc-3.0.4: libstdc++.so.3.0.4
gcc-3.1.0: libstdc++.so.4.0.0 (Incompatible with previous)
gcc-3.1.1: libstdc++.so.4.0.1
gcc-3.2.0: libstdc++.so.5.0.0 (Incompatible with previous)
gcc-3.2.1: libstdc++.so.5.0.1
gcc-3.2.2: libstdc++.so.5.0.2
gcc-3.2.3: libstdc++.so.5.0.3 (See Note 2)
gcc-3.3.0: libstdc++.so.5.0.4
gcc-3.3.1: libstdc++.so.5.0.5
gcc-3.3.2: libstdc++.so.5.0.5
gcc-3.3.3: libstdc++.so.5.0.5
gcc-3.4.0: libstdc++.so.6.0.0 (Incompatible with previous)
gcc-3.4.1: libstdc++.so.6.0.1
gcc-3.4.2: libstdc++.so.6.0.2
gcc-3.4.3: libstdc++.so.6.0.3
gcc-3.4.4: libstdc++.so.6.0.3
gcc-3.4.5: libstdc++.so.6.0.3
gcc-3.4.6: libstdc++.so.6.0.3
gcc-4.0.0: libstdc++.so.6.0.4
gcc-4.0.1: libstdc++.so.6.0.5
gcc-4.0.2: libstdc++.so.6.0.6
gcc-4.0.3: libstdc++.so.6.0.7
gcc-4.1.0: libstdc++.so.6.0.7
gcc-4.1.1: libstdc++.so.6.0.8
gcc-4.1.2: libstdc++.so.6.0.8
gcc-4.2.0: libstdc++.so.6.0.9
gcc-4.2.1: libstdc++.so.6.0.9 (See Note 3)
gcc-4.2.2: libstdc++.so.6.0.9
gcc-4.2.3: libstdc++.so.6.0.9
gcc-4.2.4: libstdc++.so.6.0.9
gcc-4.3.0: libstdc++.so.6.0.10
gcc-4.3.1: libstdc++.so.6.0.10
gcc-4.3.2: libstdc++.so.6.0.10
+ Note 1: Error should be libstdc++.so.3.0.3. +
+ Note 2: Not strictly required. +
+ Note 3: This release (but not previous or subsequent) has one + known incompatibility, see 33678 + in the GCC bug database. +
Symbol versioning on the libstdc++.so binary.
mapfile: libstdc++/config/linker-map.gnu
It is versioned with the following labels and version definitions, where the version definition is the maximum for a particular release. Note, only symbol which are newly introduced will use the maximum version definition. Thus, for release series @@ -96,7 +121,7 @@ release of the series to remain link compatible. GLIBCPP_3.2 for symbols that were introduced in the gcc-3.2.0 release.) If a particular release is not listed, it has the same version labels as the preceding release. -
gcc-3.0.0: (Error, not versioned)
gcc-3.0.1: (Error, not versioned)
gcc-3.0.2: (Error, not versioned)
gcc-3.0.3: (Error, not versioned)
gcc-3.0.4: (Error, not versioned)
gcc-3.1.0: GLIBCPP_3.1, CXXABI_1
gcc-3.1.1: GLIBCPP_3.1, CXXABI_1
gcc-3.2.0: GLIBCPP_3.2, CXXABI_1.2
gcc-3.2.1: GLIBCPP_3.2.1, CXXABI_1.2
gcc-3.2.2: GLIBCPP_3.2.2, CXXABI_1.2
gcc-3.2.3: GLIBCPP_3.2.2, CXXABI_1.2
gcc-3.3.0: GLIBCPP_3.2.2, CXXABI_1.2.1
gcc-3.3.1: GLIBCPP_3.2.3, CXXABI_1.2.1
gcc-3.3.2: GLIBCPP_3.2.3, CXXABI_1.2.1
gcc-3.3.3: GLIBCPP_3.2.3, CXXABI_1.2.1
gcc-3.4.0: GLIBCXX_3.4, CXXABI_1.3
gcc-3.4.1: GLIBCXX_3.4.1, CXXABI_1.3
gcc-3.4.2: GLIBCXX_3.4.2
gcc-3.4.3: GLIBCXX_3.4.3
gcc-4.0.0: GLIBCXX_3.4.4, CXXABI_1.3.1
gcc-4.0.1: GLIBCXX_3.4.5
gcc-4.0.2: GLIBCXX_3.4.6
gcc-4.0.3: GLIBCXX_3.4.7
gcc-4.1.1: GLIBCXX_3.4.8
gcc-4.2.0: GLIBCXX_3.4.9
Incremental bumping of a compiler pre-defined macro, +
gcc-3.0.0: (Error, not versioned)
gcc-3.0.1: (Error, not versioned)
gcc-3.0.2: (Error, not versioned)
gcc-3.0.3: (Error, not versioned)
gcc-3.0.4: (Error, not versioned)
gcc-3.1.0: GLIBCPP_3.1, CXXABI_1
gcc-3.1.1: GLIBCPP_3.1, CXXABI_1
gcc-3.2.0: GLIBCPP_3.2, CXXABI_1.2
gcc-3.2.1: GLIBCPP_3.2.1, CXXABI_1.2
gcc-3.2.2: GLIBCPP_3.2.2, CXXABI_1.2
gcc-3.2.3: GLIBCPP_3.2.2, CXXABI_1.2
gcc-3.3.0: GLIBCPP_3.2.2, CXXABI_1.2.1
gcc-3.3.1: GLIBCPP_3.2.3, CXXABI_1.2.1
gcc-3.3.2: GLIBCPP_3.2.3, CXXABI_1.2.1
gcc-3.3.3: GLIBCPP_3.2.3, CXXABI_1.2.1
gcc-3.4.0: GLIBCXX_3.4, CXXABI_1.3
gcc-3.4.1: GLIBCXX_3.4.1, CXXABI_1.3
gcc-3.4.2: GLIBCXX_3.4.2
gcc-3.4.3: GLIBCXX_3.4.3
gcc-4.0.0: GLIBCXX_3.4.4, CXXABI_1.3.1
gcc-4.0.1: GLIBCXX_3.4.5
gcc-4.0.2: GLIBCXX_3.4.6
gcc-4.0.3: GLIBCXX_3.4.7
gcc-4.1.1: GLIBCXX_3.4.8
gcc-4.2.0: GLIBCXX_3.4.9
gcc-4.3.0: GLIBCXX_3.4.10, CXXABI_1.3.2
Incremental bumping of a compiler pre-defined macro, __GXX_ABI_VERSION. This macro is defined as the version of the compiler v3 ABI, with g++ 3.0.x being version 100. This macro will be automatically defined whenever g++ is used (the curious can @@ -108,11 +133,11 @@ release of the series to remain link compatible. '-fabi-version' command line option.
It is versioned as follows, where 'n' is given by '-fabi-version=n': -
gcc-3.0.x: 100
gcc-3.1.x: 100 (Error, should be 101)
gcc-3.2.x: 102
gcc-3.3.x: 102
gcc-3.4.x, gcc-4.0.x, gcc-4.1.x, gcc-4.2.x: 102 (when n=1)
gcc-3.4.x, gcc-4.0.x, gcc-4.1.x, gcc-4.2.x: 1000 + n (when n>1)
gcc-3.4.x, gcc-4.0.x, gcc-4.1.x, gcc-4.2.x: 999999 (when n=0)
Changes to the default compiler option for +
gcc-3.0.x: 100
gcc-3.1.x: 100 (Error, should be 101)
gcc-3.2.x: 102
gcc-3.3.x: 102
gcc-3.4.x, gcc-4.[0-3].x: 102 (when n=1)
gcc-3.4.x, gcc-4.[0-3].x: 1000 + n (when n>1)
gcc-3.4.x, gcc-4.[0-3].x: 999999 (when n=0)
Changes to the default compiler option for
-fabi-version
.
It is versioned as follows: -
gcc-3.0.x: (Error, not versioned)
gcc-3.1.x: (Error, not versioned)
gcc-3.2.x: -fabi-version=1
gcc-3.3.x: -fabi-version=1
gcc-3.4.x, gcc-4.0.x, gcc-4.1.x, gcc-4.2.x: -fabi-version=2
Incremental bumping of a library pre-defined macro. For releases +
gcc-3.0.x: (Error, not versioned)
gcc-3.1.x: (Error, not versioned)
gcc-3.2.x: -fabi-version=1
gcc-3.3.x: -fabi-version=1
gcc-3.4.x, gcc-4.[0-3].x: -fabi-version=2
(Incompatible with previous)
Incremental bumping of a library pre-defined macro. For releases before 3.4.0, the macro is __GLIBCPP__. For later releases, it's __GLIBCXX__. (The libstdc++ project generously changed from CPP to CXX throughout its source to allow the "C" pre-processor the CPP @@ -125,7 +150,7 @@ release of the series to remain link compatible. the same value as gcc/DATESTAMP.)
It is versioned as follows: -
gcc-3.0.0: 20010615
gcc-3.0.1: 20010819
gcc-3.0.2: 20011023
gcc-3.0.3: 20011220
gcc-3.0.4: 20020220
gcc-3.1.0: 20020514
gcc-3.1.1: 20020725
gcc-3.2.0: 20020814
gcc-3.2.1: 20021119
gcc-3.2.2: 20030205
gcc-3.2.3: 20030422
gcc-3.3.0: 20030513
gcc-3.3.1: 20030804
gcc-3.3.2: 20031016
gcc-3.3.3: 20040214
gcc-3.4.0: 20040419
gcc-3.4.1: 20040701
gcc-3.4.2: 20040906
gcc-3.4.3: 20041105
gcc-3.4.4: 20050519
gcc-3.4.5: 20051201
gcc-3.4.6: 20060306
gcc-4.0.0: 20050421
gcc-4.0.1: 20050707
gcc-4.0.2: 20050921
gcc-4.0.3: 20060309
gcc-4.1.0: 20060228
gcc-4.1.1: 20060524
gcc-4.1.2: 20070214
gcc-4.2.0: 20070514
+
gcc-3.0.0: 20010615
gcc-3.0.1: 20010819
gcc-3.0.2: 20011023
gcc-3.0.3: 20011220
gcc-3.0.4: 20020220
gcc-3.1.0: 20020514
gcc-3.1.1: 20020725
gcc-3.2.0: 20020814
gcc-3.2.1: 20021119
gcc-3.2.2: 20030205
gcc-3.2.3: 20030422
gcc-3.3.0: 20030513
gcc-3.3.1: 20030804
gcc-3.3.2: 20031016
gcc-3.3.3: 20040214
gcc-3.4.0: 20040419
gcc-3.4.1: 20040701
gcc-3.4.2: 20040906
gcc-3.4.3: 20041105
gcc-3.4.4: 20050519
gcc-3.4.5: 20051201
gcc-3.4.6: 20060306
gcc-4.0.0: 20050421
gcc-4.0.1: 20050707
gcc-4.0.2: 20050921
gcc-4.0.3: 20060309
gcc-4.1.0: 20060228
gcc-4.1.1: 20060524
gcc-4.1.2: 20070214
gcc-4.2.0: 20070514
gcc-4.2.1: 20070719
gcc-4.2.2: 20071007
gcc-4.2.3: 20080201
gcc-4.2.4: 20080519
gcc-4.3.0: 20080306
gcc-4.3.1: 20080606
gcc-4.3.2: 20080827
Incremental bumping of a library pre-defined macro, _GLIBCPP_VERSION. This macro is defined as the released version of the library, as a string literal. This is only implemented in @@ -138,7 +163,7 @@ release of the series to remain link compatible. of config.h.
It is versioned as follows: -
gcc-3.0.0: "3.0.0"
gcc-3.0.1: "3.0.0" (Error, should be "3.0.1")
gcc-3.0.2: "3.0.0" (Error, should be "3.0.2")
gcc-3.0.3: "3.0.0" (Error, should be "3.0.3")
gcc-3.0.4: "3.0.0" (Error, should be "3.0.4")
gcc-3.1.0: "3.1.0"
gcc-3.1.1: "3.1.1"
gcc-3.2.0: "3.2"
gcc-3.2.1: "3.2.1"
gcc-3.2.2: "3.2.2"
gcc-3.2.3: "3.2.3"
gcc-3.3.0: "3.3"
gcc-3.3.1: "3.3.1"
gcc-3.3.2: "3.3.2"
gcc-3.3.3: "3.3.3"
gcc-3.4.x: "version-unused"
gcc-4.0.x: "version-unused"
gcc-4.1.x: "version-unused"
gcc-4.2.x: "version-unused"
+
gcc-3.0.0: "3.0.0"
gcc-3.0.1: "3.0.0" (Error, should be "3.0.1")
gcc-3.0.2: "3.0.0" (Error, should be "3.0.2")
gcc-3.0.3: "3.0.0" (Error, should be "3.0.3")
gcc-3.0.4: "3.0.0" (Error, should be "3.0.4")
gcc-3.1.0: "3.1.0"
gcc-3.1.1: "3.1.1"
gcc-3.2.0: "3.2"
gcc-3.2.1: "3.2.1"
gcc-3.2.2: "3.2.2"
gcc-3.2.3: "3.2.3"
gcc-3.3.0: "3.3"
gcc-3.3.1: "3.3.1"
gcc-3.3.2: "3.3.2"
gcc-3.3.3: "3.3.3"
gcc-3.4.x: "version-unused"
gcc-4.[0-3].x: "version-unused"
Matching each specific C++ compiler release to a specific set of C++ include files. This is only implemented in gcc-3.1.1 releases and higher. @@ -150,7 +175,7 @@ release of the series to remain link compatible. file's macro GLIBCXX_CONFIGURE (GLIBCPP_CONFIGURE before gcc-3.4.0).
C++ includes are versioned as follows: -
gcc-3.0.0: include/g++-v3
gcc-3.0.1: include/g++-v3
gcc-3.0.2: include/g++-v3
gcc-3.0.3: include/g++-v3
gcc-3.0.4: include/g++-v3
gcc-3.1.0: include/g++-v3
gcc-3.1.1: include/c++/3.1.1
gcc-3.2.0: include/c++/3.2
gcc-3.2.1: include/c++/3.2.1
gcc-3.2.2: include/c++/3.2.2
gcc-3.2.3: include/c++/3.2.3
gcc-3.3.0: include/c++/3.3
gcc-3.3.1: include/c++/3.3.1
gcc-3.3.2: include/c++/3.3.2
gcc-3.3.3: include/c++/3.3.3
gcc-3.4.0: include/c++/3.4.0
gcc-3.4.1: include/c++/3.4.1
gcc-3.4.2: include/c++/3.4.2
gcc-3.4.3: include/c++/3.4.3
gcc-3.4.4: include/c++/3.4.4
gcc-3.4.5: include/c++/3.4.5
gcc-3.4.6: include/c++/3.4.6
gcc-4.0.0: include/c++/4.0.0
gcc-4.0.1: include/c++/4.0.1
gcc-4.0.2: include/c++/4.0.2
gcc-4.0.3: include/c++/4.0.3
gcc-4.1.0: include/c++/4.1.0
gcc-4.1.1: include/c++/4.1.1
gcc-4.1.2: include/c++/4.1.2
gcc-4.2.0: include/c++/4.2.0
+
gcc-3.0.0: include/g++-v3
gcc-3.0.1: include/g++-v3
gcc-3.0.2: include/g++-v3
gcc-3.0.3: include/g++-v3
gcc-3.0.4: include/g++-v3
gcc-3.1.0: include/g++-v3
gcc-3.1.1: include/c++/3.1.1
gcc-3.2.0: include/c++/3.2
gcc-3.2.1: include/c++/3.2.1
gcc-3.2.2: include/c++/3.2.2
gcc-3.2.3: include/c++/3.2.3
gcc-3.3.0: include/c++/3.3
gcc-3.3.1: include/c++/3.3.1
gcc-3.3.2: include/c++/3.3.2
gcc-3.3.3: include/c++/3.3.3
gcc-3.4.0: include/c++/3.4.0
gcc-3.4.1: include/c++/3.4.1
gcc-3.4.2: include/c++/3.4.2
gcc-3.4.3: include/c++/3.4.3
gcc-3.4.4: include/c++/3.4.4
gcc-3.4.5: include/c++/3.4.5
gcc-3.4.6: include/c++/3.4.6
gcc-4.0.0: include/c++/4.0.0
gcc-4.0.1: include/c++/4.0.1
gcc-4.0.2: include/c++/4.0.2
gcc-4.0.3: include/c++/4.0.3
gcc-4.1.0: include/c++/4.1.0
gcc-4.1.1: include/c++/4.1.1
gcc-4.1.2: include/c++/4.1.2
gcc-4.2.0: include/c++/4.2.0
gcc-4.2.1: include/c++/4.2.1
gcc-4.2.2: include/c++/4.2.2
gcc-4.2.3: include/c++/4.2.3
gcc-4.2.4: include/c++/4.2.4
gcc-4.3.0: include/c++/4.3.0
gcc-4.3.1: include/c++/4.3.1
gcc-4.3.2: include/c++/4.3.2
Taken together, these techniques can accurately specify interface and implementation changes in the GNU C++ tools themselves. Used properly, they allow both the GNU C++ tools implementation, and @@ -436,54 +461,54 @@ gcc test.c -g -O2 -L. -lone -ltwo /usr/lib/libstdc++.so.5 /usr/lib/libstdc++.so. 24660: versioning weak symbols in libstdc++
19664: libstdc++ headers should have pop/push of the visibility around the declarations -
Versioning With Namespaces . ISO C++ J16/06-0083 diff --git a/libstdc++-v3/doc/html/manual/api.html b/libstdc++-v3/doc/html/manual/api.html index 95e7636f5b3..eab1a12c398 100644 --- a/libstdc++-v3/doc/html/manual/api.html +++ b/libstdc++-v3/doc/html/manual/api.html @@ -72,11 +72,11 @@ _Alloc_traits have been removed. __alloc to select an underlying allocator that satisfied memory allocation requests. The selection of this underlying allocator was not user-configurable. -
Table B.1. Extension Allocators
Allocator (3.4) | Header (3.4) | Allocator (3.[0-3]) | Header (3.[0-3]) |
---|---|---|---|
__gnu_cxx::new_allocator<T> | ext/new_allocator.h | std::__new_alloc | memory |
__gnu_cxx::malloc_allocator<T> | ext/malloc_allocator.h | std::__malloc_alloc_template<int> | memory |
__gnu_cxx::debug_allocator<T> | ext/debug_allocator.h | std::debug_alloc<T> | memory |
__gnu_cxx::__pool_alloc<T> | ext/pool_allocator.h | std::__default_alloc_template<bool,int> | memory |
__gnu_cxx::__mt_alloc<T> | ext/mt_allocator.h | ||
__gnu_cxx::bitmap_allocator<T> | ext/bitmap_allocator.h |
Releases after gcc-3.4 have continued to add to the collection +
Table B.1. Extension Allocators
Allocator (3.4) | Header (3.4) | Allocator (3.[0-3]) | Header (3.[0-3]) |
---|---|---|---|
__gnu_cxx::new_allocator<T> | ext/new_allocator.h | std::__new_alloc | memory |
__gnu_cxx::malloc_allocator<T> | ext/malloc_allocator.h | std::__malloc_alloc_template<int> | memory |
__gnu_cxx::debug_allocator<T> | ext/debug_allocator.h | std::debug_alloc<T> | memory |
__gnu_cxx::__pool_alloc<T> | ext/pool_allocator.h | std::__default_alloc_template<bool,int> | memory |
__gnu_cxx::__mt_alloc<T> | ext/mt_allocator.h | ||
__gnu_cxx::bitmap_allocator<T> | ext/bitmap_allocator.h |
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. -
Table B.2. Extension Allocators Continued
Allocator | Include | Version |
---|---|---|
__gnu_cxx::array_allocator<T> | ext/array_allocator.h | 4.0.0 |
__gnu_cxx::throw_allocator<T> | ext/throw_allocator.h | 4.2.0 |
+
Table B.2. Extension Allocators Continued
Allocator | Include | Version |
---|---|---|
__gnu_cxx::array_allocator<T> | ext/array_allocator.h | 4.0.0 |
__gnu_cxx::throw_allocator<T> | ext/throw_allocator.h | 4.2.0 |
Debug mode first appears.
Precompiled header support PCH support. diff --git a/libstdc++-v3/doc/html/manual/backwards.html b/libstdc++-v3/doc/html/manual/backwards.html index b0e62138d1e..40511603955 100644 --- a/libstdc++-v3/doc/html/manual/backwards.html +++ b/libstdc++-v3/doc/html/manual/backwards.html @@ -14,8 +14,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 “obvious” classes didn't get included. -
Known Issues include many of the limitations of its immediate ancestor.
Portability notes and known implementation limitations are as follows.
At least some older implementations don't have std::ios_base
, so you should use std::ios::badbit
, std::ios::failbit
and std::ios::eofbit
and std::ios::goodbit
.
-
+
Known Issues include many of the limitations of its immediate ancestor.
Portability notes and known implementation limitations are as follows.
At least some older implementations don't have std::ios_base
, so you should use std::ios::badbit
, std::ios::failbit
and std::ios::eofbit
and std::ios::goodbit
.
+
In earlier versions of the standard,
fstream.h
,
ostream.h
@@ -41,7 +41,7 @@ considered replaced and rewritten.
archived. The code is considered replaced and rewritten.
Portability notes and known implementation limitations are as follows. -
+
Some care is required to support C++ compiler and or library
implementation that do not have the standard library in
namespace std
.
@@ -105,7 +105,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [
AC_DEFINE(HAVE_NAMESPACE_STD,,[Define if g++ supports namespace std. ])
fi
])
-
The following illustrate implementation-allowed illegal iterator use, and then correct use.
@@ -118,7 +118,7 @@ AC_DEFUN([AC_CXX_NAMESPACE_STD], [
if (iterator)
won't work any more => use
if (iterator != iterator_type())
-
Glibc 2.0.x and 2.1.x define ctype.h
functionality as macros
(isspace, isalpha etc.).
@@ -151,7 +151,7 @@ std:: (__ctype_b[(int) ( ( 'X' ) )] & (unsigned short int) _ISspace ) ;
(ctype.h
) and the
definitions in namespace std::
(<cctype>
).
-
One solution is to add an autoconf-test for this:
AC_MSG_CHECKING(for container::at) @@ -177,7 +177,7 @@ AC_DEFINE(HAVE_CONTAINER_AT)],
If you are using other (non-GNU) compilers it might be a good idea
to check for string::at
separately.
-
Use some kind of autoconf test, plus this:
#ifdef HAVE_CHAR_TRAITS @@ -185,7 +185,7 @@ AC_DEFINE(HAVE_CONTAINER_AT)], #else #define CPP_EOF EOF #endif -
There are two functions for deleting the contents of a string:
clear
and erase
(the latter returns the
string).
@@ -203,12 +203,12 @@ erase(size_type __pos = 0, size_type __n = npos)
Unfortunately, clear
is not implemented in this
version, so you should use erase
(which is probably
faster than operator=(charT*)
).
-
These are no longer supported. Please use stringstreams instead. -
Although the ISO standard i/ostringstream
-classes are
provided, (sstream
), for
compatibility with older implementations the pre-ISO
@@ -296,14 +296,14 @@ any = temp;
Another example of using stringstreams is in this howto.
There is additional information in the libstdc++-v2 info files, in particular “info iostream”. -
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 @@ -361,7 +361,7 @@ libstdc++-v3. of the SGI STL (version 3.3), with extensive changes.
A more formal description of the V3 goals can be found in the official design document. -
Portability notes and known implementation limitations are as follows.
The pre-ISO C++ headers +
Portability notes and known implementation limitations are as follows.
The pre-ISO C++ headers
(iostream.h
, defalloc.h
etc.) are
available, unlike previous libstdc++ versions, but inclusion
generates a warning that you are using deprecated headers.
@@ -433,7 +433,7 @@ like vector.h
can be replaced with using namespace std;
can be put at the global
scope. This should be enough to get this code compiling, assuming the
other usage is correct.
-
At this time most of the features of the SGI STL extension have been +
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 @@ -505,7 +505,7 @@ AC_DEFUN([AC_HEADER_EXT_HASH_SET], [ AC_DEFINE(HAVE_EXT_HASH_SET,,[Define if ext/hash_set is present. ]) fi ]) -
The existence of ios::nocreate
being used for
input-streams has been confirmed, most probably because the author
thought it would be more correct to specify nocreate explicitly. So
@@ -516,7 +516,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 app
, ate
and trunc
(except for app
?).
-
Phil Edwards writes: It was considered and rejected for the ISO
@@ -539,7 +539,7 @@ No stream::attach(int fd)
For another example of this, refer to
fdstream example
by Nicolai Josuttis.
-
Check for complete library coverage of the C++1998/2003 standard.
@@ -607,7 +607,7 @@ AC_DEFUN([AC_HEADER_STDCXX_98], [ AC_DEFINE(STDCXX_98_HEADERS,,[Define if ISO C++ 1998 header files are present. ]) fi ]) -
Check for library coverage of the TR1 standard.
@@ -684,7 +684,7 @@ AC_DEFUN([AC_HEADER_TR1_UNORDERED_SET], [ AC_DEFINE(HAVE_TR1_UNORDERED_SET,,[Define if tr1/unordered_set is present. ]) fi ]) -
Check for baseline language coverage in the compiler for the C++0xstandard.
@@ -896,27 +896,27 @@ AC_DEFUN([AC_HEADER_UNORDERED_SET], [ AC_DEFINE(HAVE_UNORDERED_SET,,[Define if unordered_set is present. ]) fi ]) -
[ lbl32 ] Migration guide for GCC-3.2 diff --git a/libstdc++-v3/doc/html/manual/bitmap_allocator.html b/libstdc++-v3/doc/html/manual/bitmap_allocator.html index cafa08ff825..7288f8a4335 100644 --- a/libstdc++-v3/doc/html/manual/bitmap_allocator.html +++ b/libstdc++-v3/doc/html/manual/bitmap_allocator.html @@ -103,7 +103,7 @@ else return false.
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). -
+
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 diff --git a/libstdc++-v3/doc/html/manual/bk01pt01ch01.html b/libstdc++-v3/doc/html/manual/bk01pt01ch01.html index 82a2e92355d..d32f5be7bd0 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt01ch01.html +++ b/libstdc++-v3/doc/html/manual/bk01pt01ch01.html @@ -6101,7 +6101,7 @@ In this implementation the header names are prefixed by
This page describes the TR1 support in mainline GCC SVN, not in any particular release. -
Table 1.1. C++ TR1 Implementation Status
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 | See Footnotes | ||
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 | done | |||
5.1.1 | Requirements | done | |||
5.1.2 | Header <random> synopsis | done | |||
5.1.3 | Class template variate_generator | done | |||
5.1.4 | Random number engine class templates | done | |||
5.1.4.1 | Class template linear_congruential | done | |||
5.1.4.2 | Class template mersenne_twister | done | |||
5.1.4.3 | Class template subtract_with_carry | done | |||
5.1.4.4 | Class template subtract_with_carry_01 | done | |||
5.1.4.5 | Class template discard_block | done | |||
5.1.4.6 | Class template xor_combine | done | operator()() per N2079 | ||
5.1.5 | Engines with predefined parameters | done | |||
5.1.6 | Class random_device | done | |||
5.1.7 | Random distribution class templates | done | |||
5.1.7.1 | Class template uniform_int | done | |||
5.1.7.2 | Class bernoulli_distribution | done | |||
5.1.7.3 | Class template geometric_distribution | done | |||
5.1.7.4 | Class template poisson_distribution | done | |||
5.1.7.5 | Class template binomial_distribution | done | |||
5.1.7.6 | Class template uniform_real | done | |||
5.1.7.7 | Class template exponential_distribution | done | |||
5.1.7.8 | Class template normal_distribution | done | |||
5.1.7.9 | Class template gamma_distribution | done | |||
5.2 | Mathematical special functions | done | |||
5.2.1 | Additions to header <cmath> synopsis | done | |||
5.2.1.1 | associated Laguerre polynomials | done | |||
5.2.1.2 | associated Legendre functions | done | |||
5.2.1.3 | beta function | done | |||
5.2.1.4 | (complete) elliptic integral of the first kind | done | |||
5.2.1.5 | (complete) elliptic integral of the second kind | done | |||
5.2.1.6 | (complete) elliptic integral of the third kind | done | |||
5.2.1.7 | confluent hypergeometric functions | done | |||
5.2.1.8 | regular modified cylindrical Bessel functions | done | |||
5.2.1.9 | cylindrical Bessel functions (of the first kind) | done | |||
5.2.1.10 | irregular modified cylindrical Bessel functions | done | |||
5.2.1.11 | cylindrical Neumann functions | done | |||
5.2.1.12 | (incomplete) elliptic integral of the first kind | done | |||
5.2.1.13 | (incomplete) elliptic integral of the second kind | done | |||
5.2.1.14 | (incomplete) elliptic integral of the third kind | done | |||
5.2.1.15 | exponential integral | done | |||
5.2.1.16 | Hermite polynomials | done | |||
5.2.1.17 | hypergeometric functions | done | |||
5.2.1.18 | Laguerre polynomials | done | |||
5.2.1.19 | Legendre polynomials | done | |||
5.2.1.20 | Riemann zeta function | done | |||
5.2.1.21 | spherical Bessel functions (of the first kind) | done | |||
5.2.1.22 | spherical associated Legendre functions | done | |||
5.2.1.23 | spherical Neumann functions | done | |||
5.2.2 | Additions to header <math.h> synopsis | done | |||
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 responsibility | ||
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 responsibility | ||
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 responsibility | ||
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 |
+
Table 1.1. C++ TR1 Implementation Status
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 | See Footnotes | ||
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 | done | |||
5.1.1 | Requirements | done | |||
5.1.2 | Header <random> synopsis | done | |||
5.1.3 | Class template variate_generator | done | |||
5.1.4 | Random number engine class templates | done | |||
5.1.4.1 | Class template linear_congruential | done | |||
5.1.4.2 | Class template mersenne_twister | done | |||
5.1.4.3 | Class template subtract_with_carry | done | |||
5.1.4.4 | Class template subtract_with_carry_01 | done | |||
5.1.4.5 | Class template discard_block | done | |||
5.1.4.6 | Class template xor_combine | done | operator()() per N2079 | ||
5.1.5 | Engines with predefined parameters | done | |||
5.1.6 | Class random_device | done | |||
5.1.7 | Random distribution class templates | done | |||
5.1.7.1 | Class template uniform_int | done | |||
5.1.7.2 | Class bernoulli_distribution | done | |||
5.1.7.3 | Class template geometric_distribution | done | |||
5.1.7.4 | Class template poisson_distribution | done | |||
5.1.7.5 | Class template binomial_distribution | done | |||
5.1.7.6 | Class template uniform_real | done | |||
5.1.7.7 | Class template exponential_distribution | done | |||
5.1.7.8 | Class template normal_distribution | done | |||
5.1.7.9 | Class template gamma_distribution | done | |||
5.2 | Mathematical special functions | done | |||
5.2.1 | Additions to header <cmath> synopsis | done | |||
5.2.1.1 | associated Laguerre polynomials | done | |||
5.2.1.2 | associated Legendre functions | done | |||
5.2.1.3 | beta function | done | |||
5.2.1.4 | (complete) elliptic integral of the first kind | done | |||
5.2.1.5 | (complete) elliptic integral of the second kind | done | |||
5.2.1.6 | (complete) elliptic integral of the third kind | done | |||
5.2.1.7 | confluent hypergeometric functions | done | |||
5.2.1.8 | regular modified cylindrical Bessel functions | done | |||
5.2.1.9 | cylindrical Bessel functions (of the first kind) | done | |||
5.2.1.10 | irregular modified cylindrical Bessel functions | done | |||
5.2.1.11 | cylindrical Neumann functions | done | |||
5.2.1.12 | (incomplete) elliptic integral of the first kind | done | |||
5.2.1.13 | (incomplete) elliptic integral of the second kind | done | |||
5.2.1.14 | (incomplete) elliptic integral of the third kind | done | |||
5.2.1.15 | exponential integral | done | |||
5.2.1.16 | Hermite polynomials | done | |||
5.2.1.17 | hypergeometric functions | done | |||
5.2.1.18 | Laguerre polynomials | done | |||
5.2.1.19 | Legendre polynomials | done | |||
5.2.1.20 | Riemann zeta function | done | |||
5.2.1.21 | spherical Bessel functions (of the first kind) | done | |||
5.2.1.22 | spherical associated Legendre functions | done | |||
5.2.1.23 | spherical Neumann functions | done | |||
5.2.2 | Additions to header <math.h> synopsis | done | |||
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 responsibility | ||
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 responsibility | ||
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 responsibility | ||
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 |
Footnotes
The shared_ptr implementation uses some code from the @@ -6120,7 +6120,7 @@ presence of the required flag.
This page describes the C++0x support in mainline GCC SVN, not in any particular release. -
Table 1.2. C++ 200x Implementation Status
Section | Description | Done | Broken | Missing | Comments | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
20 | General Utilities | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.2 | Utility Components | incomplete | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.2.1 | Operators | partial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.2.2 | forward/move helpers | partial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.2.3 | Pairs | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.3 | Header <tuple> synopsis | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.3.1 | Class template tuple | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.3.1.1 | Construction | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.3.1.2 | Tuple creation functions | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.3.1.3 | Tuple helper classes | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.3.1.4 | Element access | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.3.1.5 | Relational operators | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4 | Metaprogramming and type traits | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.1 | Requirements | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.2 | Header <type_traits> synopsis | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.3 | Helper classes | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.4 | General Requirements | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.5 | Unary Type Traits | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.5.1 | Primary Type Categories | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.5.2 | Composite type traits | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.5.3 | Type properties | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.6 | Relationships between types | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.7 | Transformations between types | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.7.1 | Const-volatile modifications | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.7.2 | Reference modifications | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.7.3 | Array modifications | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.7.4 | Pointer modifications | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.8 | Other transformations | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.4.9 | Implementation requirements | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5 | Function Objects | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5 | Additions to header <functional> synopsis | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.1 | Definitions | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.2 | Requirements | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.3 | Base | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.4 | Function return types | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.5 | Class template reference_wrapper | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.5.1 | reference_wrapper construct/copy/destroy | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.5.2 | reference_wrapper assignment | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.5.3 | reference_wrapper access | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.5.4 | reference_wrapper invocation | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.5.5 | reference_wrapper helper functions | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.14 | Function template mem_fn | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.11 | Template function bind | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.11.1 | Function object binders | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.11.1.1 | Class template is_bind_expression | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.11.1.2 | Class template is_placeholder | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.11.1.3 | Function template bind | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.11.1.4 | Placeholders | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15 | Polymorphic function wrappers | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.1 | Class bad_function_call | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.1.1 | bad_function_call constructor | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2 | Class template function | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2.1 | function construct/copy/destroy | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2.2 | function modifiers | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2.3 | function capacity | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2.4 | function invocation | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2.5 | function target access | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2.7 | null pointer comparison operators | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.15.2.8 | specialized algorithms | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.5.16 | Class template hash | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6 | Additions to header <memory> synopsis | partial | missing unique_ptr | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.5 | Class template unique_ptr | missing | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6 | Smart pointers | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.1 | Class bad_weak_ptr | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.2 | Class template shared_ptr | done | See Footnotes. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.2.1 | shared_ptr constructors | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.2.2 | shared_ptr destructor | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.2.3 | shared_ptr assignment | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.2.4 | shared_ptr modifiers | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.2.5 | shared_ptr observers | done | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20.6.6.2.6 | shared_ptr creation | done |
+ Table 1.2. C++ 200x Implementation Status
Footnotes diff --git a/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html b/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html index d3dd827cf7d..53854936694 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html +++ b/libstdc++-v3/doc/html/manual/bk01pt01ch03s02.html @@ -20,14 +20,14 @@ upcoming 200x standard.
C++98/03 include files. These are available in the default compilation mode, i.e. Table 3.1. C++ 1998 Library Headers
Table 3.2. C++ 1998 Library Headers for C Library Facilities
C++0x include files. These are only available in C++0x compilation mode, i.e. Table 3.3. C++ 200x Library Headers
Table 3.4. C++ 200x Library Headers for C Library Facilities
+ Table 3.1. C++ 1998 Library Headers
Table 3.2. C++ 1998 Library Headers for C Library Facilities
C++0x include files. These are only available in C++0x compilation mode, i.e. Table 3.3. C++ 200x Library Headers
Table 3.4. C++ 200x Library Headers for C Library Facilities
In addition, TR1 includes as: - Table 3.5. C++ TR1 Library Headers
Table 3.6. C++ TR1 Library Headers for C Library Facilities
+ Table 3.5. C++ TR1 Library Headers
Table 3.6. C++ TR1 Library Headers for C Library Facilities
Also included are files for the C++ ABI interface: - + And a large variety of extensions. - Table 3.8. Extension Headers
Table 3.9. Extension Debug Headers
A few simple rules. + Table 3.8. Extension Headers
Table 3.9. Extension Debug Headers
A few simple rules. First, mixing different dialects of the standard headers is not possible. It's an all-or-nothing affair. Thus, code like diff --git a/libstdc++-v3/doc/html/manual/bk01pt02pr01.html b/libstdc++-v3/doc/html/manual/bk01pt02pr01.html index 88f2cd62f4d..3d8a64207ac 100644 --- a/libstdc++-v3/doc/html/manual/bk01pt02pr01.html +++ b/libstdc++-v3/doc/html/manual/bk01pt02pr01.html @@ -1,6 +1,6 @@ - |