From: Jonathan Wakely
Date: Fri, 16 Jun 2017 11:54:59 +0000 (+0100)
Subject: PR libstdc++/81092 add std::wstring symbols and bump library version
X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4317778a9b6213a97a3de5ffd77edf516592fb71;p=gcc.git
PR libstdc++/81092 add std::wstring symbols and bump library version
PR libstdc++/81092
* acinclude.m4: Bump libtool_VERSION.
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
* config/abi/pre/gnu.ver: Add wstring constructor symbols to
GLIBCXX_3.4.24 version and move random_device::_M_get_entropy() symbol
to new GLIBCXX_3.4.25 version.
* doc/xml/manual/abi.xml: Document new versions.
* doc/html/*: Regenerate.
* testsuite/21_strings/basic_string/cons/char/8.cc: Use base object
constructors to ensure required symbols are exported.
* testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
* testsuite/util/testsuite_abi.cc: Add new version.
From-SVN: r249246
---
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 09d1abe4fb7..bcf1d049a29 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,19 @@
2017-06-16 Jonathan Wakely
+ PR libstdc++/81092
+ * acinclude.m4: Bump libtool_VERSION.
+ * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
+ * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
+ * config/abi/pre/gnu.ver: Add wstring constructor symbols to
+ GLIBCXX_3.4.24 version and move random_device::_M_get_entropy() symbol
+ to new GLIBCXX_3.4.25 version.
+ * doc/xml/manual/abi.xml: Document new versions.
+ * doc/html/*: Regenerate.
+ * testsuite/21_strings/basic_string/cons/char/8.cc: Use base object
+ constructors to ensure required symbols are exported.
+ * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
+ * testsuite/util/testsuite_abi.cc: Add new version.
+
* include/bits/locale_conv.h (wbuffer_convert::_M_put): Add missing
return statement.
* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4
index baeea67c459..599308f587a 100644
--- a/libstdc++-v3/acinclude.m4
+++ b/libstdc++-v3/acinclude.m4
@@ -3750,7 +3750,7 @@ changequote([,])dnl
fi
# For libtool versioning info, format is CURRENT:REVISION:AGE
-libtool_VERSION=6:24:0
+libtool_VERSION=6:25:0
# Everything parsed; figure out what files and settings to use.
case $enable_symvers in
diff --git a/libstdc++-v3/config/abi/post/i386-linux-gnu/baseline_symbols.txt b/libstdc++-v3/config/abi/post/i386-linux-gnu/baseline_symbols.txt
index f9eab29048f..e673f4f86dc 100644
--- a/libstdc++-v3/config/abi/post/i386-linux-gnu/baseline_symbols.txt
+++ b/libstdc++-v3/config/abi/post/i386-linux-gnu/baseline_symbols.txt
@@ -444,6 +444,7 @@ FUNC:_ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4
FUNC:_ZNKSt13basic_istreamIwSt11char_traitsIwEE6gcountEv@@GLIBCXX_3.4
FUNC:_ZNKSt13basic_istreamIwSt11char_traitsIwEE6sentrycvbEv@@GLIBCXX_3.4
FUNC:_ZNKSt13basic_ostreamIwSt11char_traitsIwEE6sentrycvbEv@@GLIBCXX_3.4
+FUNC:_ZNKSt13random_device13_M_getentropyEv@@GLIBCXX_3.4.25
FUNC:_ZNKSt13runtime_error4whatEv@@GLIBCXX_3.4
FUNC:_ZNKSt14basic_ifstreamIcSt11char_traitsIcEE5rdbufEv@@GLIBCXX_3.4
FUNC:_ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv@@GLIBCXX_3.4.5
@@ -1329,6 +1330,7 @@ FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1EPKwRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1EPKwjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_@@GLIBCXX_3.4
+FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jRKS1_@@GLIBCXX_3.4.24
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jj@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ESt16initializer_listIwERKS1_@@GLIBCXX_3.4.11
@@ -1342,6 +1344,7 @@ FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2EPKwRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2EPKwjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_@@GLIBCXX_3.4
+FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jRKS1_@@GLIBCXX_3.4.24
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jj@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ESt16initializer_listIwERKS1_@@GLIBCXX_3.4.11
@@ -4002,6 +4005,8 @@ OBJECT:0:GLIBCXX_3.4.20
OBJECT:0:GLIBCXX_3.4.21
OBJECT:0:GLIBCXX_3.4.22
OBJECT:0:GLIBCXX_3.4.23
+OBJECT:0:GLIBCXX_3.4.24
+OBJECT:0:GLIBCXX_3.4.25
OBJECT:0:GLIBCXX_3.4.3
OBJECT:0:GLIBCXX_3.4.4
OBJECT:0:GLIBCXX_3.4.5
diff --git a/libstdc++-v3/config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt b/libstdc++-v3/config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt
index f9eab29048f..e673f4f86dc 100644
--- a/libstdc++-v3/config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt
+++ b/libstdc++-v3/config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt
@@ -444,6 +444,7 @@ FUNC:_ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4
FUNC:_ZNKSt13basic_istreamIwSt11char_traitsIwEE6gcountEv@@GLIBCXX_3.4
FUNC:_ZNKSt13basic_istreamIwSt11char_traitsIwEE6sentrycvbEv@@GLIBCXX_3.4
FUNC:_ZNKSt13basic_ostreamIwSt11char_traitsIwEE6sentrycvbEv@@GLIBCXX_3.4
+FUNC:_ZNKSt13random_device13_M_getentropyEv@@GLIBCXX_3.4.25
FUNC:_ZNKSt13runtime_error4whatEv@@GLIBCXX_3.4
FUNC:_ZNKSt14basic_ifstreamIcSt11char_traitsIcEE5rdbufEv@@GLIBCXX_3.4
FUNC:_ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv@@GLIBCXX_3.4.5
@@ -1329,6 +1330,7 @@ FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1EPKwRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1EPKwjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_@@GLIBCXX_3.4
+FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jRKS1_@@GLIBCXX_3.4.24
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jj@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC1ESt16initializer_listIwERKS1_@@GLIBCXX_3.4.11
@@ -1342,6 +1344,7 @@ FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2EPKwRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2EPKwjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_@@GLIBCXX_3.4
+FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jRKS1_@@GLIBCXX_3.4.24
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jj@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jjRKS1_@@GLIBCXX_3.4
FUNC:_ZNSbIwSt11char_traitsIwESaIwEEC2ESt16initializer_listIwERKS1_@@GLIBCXX_3.4.11
@@ -4002,6 +4005,8 @@ OBJECT:0:GLIBCXX_3.4.20
OBJECT:0:GLIBCXX_3.4.21
OBJECT:0:GLIBCXX_3.4.22
OBJECT:0:GLIBCXX_3.4.23
+OBJECT:0:GLIBCXX_3.4.24
+OBJECT:0:GLIBCXX_3.4.25
OBJECT:0:GLIBCXX_3.4.3
OBJECT:0:GLIBCXX_3.4.4
OBJECT:0:GLIBCXX_3.4.5
diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver
index 48e2ec870fc..7e5a9cce7ab 100644
--- a/libstdc++-v3/config/abi/pre/gnu.ver
+++ b/libstdc++-v3/config/abi/pre/gnu.ver
@@ -1953,6 +1953,7 @@ GLIBCXX_3.4.23 {
# basic_string::basic_string(const basic_string&, size_type, const A&)
_ZNSt7__cxx1112basic_stringI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]ERKS4_[jmy]RKS3_;
_ZNSsC[12]ERKSs[jmy]RKSaIcE;
+ # This should have been _[jmy]RKS1_ not _mRKS1_ (PR libstdc++/81092):
_ZNSbIwSt11char_traitsIwESaIwEEC[12]ERKS2_mRKS1_;
#ifndef HAVE_EXCEPTION_PTR_SINCE_GCC46
@@ -1969,10 +1970,17 @@ GLIBCXX_3.4.23 {
GLIBCXX_3.4.24 {
+ # These should have been in GLIBCXX_3.4.23 (PR libstdc++/81092):
+ _ZNSbIwSt11char_traitsIwESaIwEEC[12]ERKS2_[jy]RKS1_;
+
+} GLIBCXX_3.4.23;
+
+GLIBCXX_3.4.25 {
+
# std::random_device::_M_getentropy() const
_ZNKSt13random_device13_M_getentropyEv;
-} GLIBCXX_3.4.23;
+} GLIBCXX_3.4.24;
# Symbols in the support library (libsupc++) have their own tag.
CXXABI_1.3 {
diff --git a/libstdc++-v3/doc/html/manual/abi.html b/libstdc++-v3/doc/html/manual/abi.html
index 2d43eb523fa..a611f7b4014 100644
--- a/libstdc++-v3/doc/html/manual/abi.html
+++ b/libstdc++-v3/doc/html/manual/abi.html
@@ -110,7 +110,7 @@ compatible.
has the same filename and DT_SONAME
as the
preceding release.
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.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 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.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.3.0: libstdc++.so.6.0.10
GCC 4.4.0: libstdc++.so.6.0.11
GCC 4.4.1: libstdc++.so.6.0.12
GCC 4.4.2: libstdc++.so.6.0.13
GCC 4.5.0: libstdc++.so.6.0.14
GCC 4.6.0: libstdc++.so.6.0.15
GCC 4.6.1: libstdc++.so.6.0.16
GCC 4.7.0: libstdc++.so.6.0.17
GCC 4.8.0: libstdc++.so.6.0.18
GCC 4.8.3: libstdc++.so.6.0.19
GCC 4.9.0: libstdc++.so.6.0.20
GCC 5.1.0: libstdc++.so.6.0.21
GCC 6.1.0: libstdc++.so.6.0.22
GCC 7.1.0: libstdc++.so.6.0.23
+
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.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 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.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.3.0: libstdc++.so.6.0.10
GCC 4.4.0: libstdc++.so.6.0.11
GCC 4.4.1: libstdc++.so.6.0.12
GCC 4.4.2: libstdc++.so.6.0.13
GCC 4.5.0: libstdc++.so.6.0.14
GCC 4.6.0: libstdc++.so.6.0.15
GCC 4.6.1: libstdc++.so.6.0.16
GCC 4.7.0: libstdc++.so.6.0.17
GCC 4.8.0: libstdc++.so.6.0.18
GCC 4.8.3: libstdc++.so.6.0.19
GCC 4.9.0: libstdc++.so.6.0.20
GCC 5.1.0: libstdc++.so.6.0.21
GCC 6.1.0: libstdc++.so.6.0.22
GCC 7.1.0: libstdc++.so.6.0.23
GCC 7.2.0: libstdc++.so.6.0.24
GCC 8.0.0: libstdc++.so.6.0.25
Note 1: Error should be libstdc++.so.3.0.3.
Note 2: Not strictly required.
@@ -128,7 +128,7 @@ 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
GCC 4.3.0: GLIBCXX_3.4.10, CXXABI_1.3.2
GCC 4.4.0: GLIBCXX_3.4.11, CXXABI_1.3.3
GCC 4.4.1: GLIBCXX_3.4.12, CXXABI_1.3.3
GCC 4.4.2: GLIBCXX_3.4.13, CXXABI_1.3.3
GCC 4.5.0: GLIBCXX_3.4.14, CXXABI_1.3.4
GCC 4.6.0: GLIBCXX_3.4.15, CXXABI_1.3.5
GCC 4.6.1: GLIBCXX_3.4.16, CXXABI_1.3.5
GCC 4.7.0: GLIBCXX_3.4.17, CXXABI_1.3.6
GCC 4.8.0: GLIBCXX_3.4.18, CXXABI_1.3.7
GCC 4.8.3: GLIBCXX_3.4.19, CXXABI_1.3.7
GCC 4.9.0: GLIBCXX_3.4.20, CXXABI_1.3.8
GCC 5.1.0: GLIBCXX_3.4.21, CXXABI_1.3.9
GCC 6.1.0: GLIBCXX_3.4.22, CXXABI_1.3.10
GCC 7.1.0: GLIBCXX_3.4.23, CXXABI_1.3.11
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
GCC 4.4.0: GLIBCXX_3.4.11, CXXABI_1.3.3
GCC 4.4.1: GLIBCXX_3.4.12, CXXABI_1.3.3
GCC 4.4.2: GLIBCXX_3.4.13, CXXABI_1.3.3
GCC 4.5.0: GLIBCXX_3.4.14, CXXABI_1.3.4
GCC 4.6.0: GLIBCXX_3.4.15, CXXABI_1.3.5
GCC 4.6.1: GLIBCXX_3.4.16, CXXABI_1.3.5
GCC 4.7.0: GLIBCXX_3.4.17, CXXABI_1.3.6
GCC 4.8.0: GLIBCXX_3.4.18, CXXABI_1.3.7
GCC 4.8.3: GLIBCXX_3.4.19, CXXABI_1.3.7
GCC 4.9.0: GLIBCXX_3.4.20, CXXABI_1.3.8
GCC 5.1.0: GLIBCXX_3.4.21, CXXABI_1.3.9
GCC 6.1.0: GLIBCXX_3.4.22, CXXABI_1.3.10
GCC 7.1.0: GLIBCXX_3.4.23, CXXABI_1.3.11
GCC 7.2.0: GLIBCXX_3.4.24, CXXABI_1.3.11
GCC 8.0.0: GLIBCXX_3.4.25, CXXABI_1.3.11
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 being version 100. This macro will
be automatically defined whenever g++ is used (the curious can
diff --git a/libstdc++-v3/doc/html/manual/bugs.html b/libstdc++-v3/doc/html/manual/bugs.html
index ac9b5dcdb47..1cdbf398dce 100644
--- a/libstdc++-v3/doc/html/manual/bugs.html
+++ b/libstdc++-v3/doc/html/manual/bugs.html
@@ -504,4 +504,18 @@
Remove special handling for reference_wrapper
arguments and store them directly as the target object.
+
2802:
+ Add noexcept to several shared_ptr
related
+ functions
+
+ Add noexcept.
+
2873:
+ shared_ptr
constructor requirements for a deleter
+
+ Use rvalues for deleters.
+
2942:
+ LWG 2873's resolution missed
+ weak_ptr::owner_before
+
+ Add noexcept.