aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2016-08-01 17:06:03 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2016-08-01 17:06:03 +0100
commit0f86525ae07131b2cb6ec0fe22243b49ca63490c (patch)
treef13c44e877cd3bd6ec30b8eb4e5f2f21e3a82d01
parent1108a48582edec95d824d8eac8093be469aaf7b2 (diff)
downloadgcc-0f86525ae07131b2cb6ec0fe22243b49ca63490c.zip
gcc-0f86525ae07131b2cb6ec0fe22243b49ca63490c.tar.gz
gcc-0f86525ae07131b2cb6ec0fe22243b49ca63490c.tar.bz2
Disable std::string and std::wstring extern templates for C++17
* include/bits/basic_string.tcc: Disable explicit instantiation declarations for C++17. From-SVN: r238959
-rw-r--r--libstdc++-v3/ChangeLog3
-rw-r--r--libstdc++-v3/include/bits/basic_string.tcc2
2 files changed, 4 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index eca470b..c172b01 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,8 @@
2016-08-01 Jonathan Wakely <jwakely@redhat.com>
+ * include/bits/basic_string.tcc: Disable explicit instantiation
+ declarations for C++17.
+
* testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
ignored "xfail" from { dg-do compile { xfail selector } } directive.
* testsuite/23_containers/unordered_multimap/requirements/53339.cc:
diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc
index 2b6644d..0560b46 100644
--- a/libstdc++-v3/include/bits/basic_string.tcc
+++ b/libstdc++-v3/include/bits/basic_string.tcc
@@ -1569,7 +1569,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// Inhibit implicit instantiations for required instantiations,
// which are defined via explicit instantiations elsewhere.
-#if _GLIBCXX_EXTERN_TEMPLATE > 0
+#if _GLIBCXX_EXTERN_TEMPLATE > 0 && __cplusplus <= 201402L
extern template class basic_string<char>;
extern template
basic_istream<char>&