From 51b6facb1aad0114201484c0c0812115355d2a62 Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Tue, 27 Jan 2004 12:37:37 +0000 Subject: [PATCH] re PR libstdc++/13884 (Protect sstream.tcc from extern template use) 2004-01-27 Paolo Carlini PR libstdc++/13884 * include/bits/sstream.tcc: Guard use of extern template. From-SVN: r76698 --- libstdc++-v3/ChangeLog | 5 +++++ libstdc++-v3/include/bits/sstream.tcc | 2 ++ 2 files changed, 7 insertions(+) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b3a706fa44b..d3c763e3401 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2004-01-27 Paolo Carlini + + PR libstdc++/13884 + * include/bits/sstream.tcc: Guard use of extern template. + 2004-01-27 Paolo Carlini * include/bits/basic_string.tcc diff --git a/libstdc++-v3/include/bits/sstream.tcc b/libstdc++-v3/include/bits/sstream.tcc index 07e13926ba9..b3db928a054 100644 --- a/libstdc++-v3/include/bits/sstream.tcc +++ b/libstdc++-v3/include/bits/sstream.tcc @@ -205,6 +205,7 @@ namespace std // Inhibit implicit instantiations for required instantiations, // which are defined via explicit instantiations elsewhere. // NB: This syntax is a GNU extension. +#if _GLIBCXX_EXTERN_TEMPLATE extern template class basic_stringbuf; extern template class basic_istringstream; extern template class basic_ostringstream; @@ -216,6 +217,7 @@ namespace std extern template class basic_ostringstream; extern template class basic_stringstream; #endif +#endif } // namespace std #endif