re PR libstdc++/13884 (Protect sstream.tcc from extern template use)
authorPaolo Carlini <pcarlini@suse.de>
Tue, 27 Jan 2004 12:37:37 +0000 (12:37 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Tue, 27 Jan 2004 12:37:37 +0000 (12:37 +0000)
2004-01-27  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/13884
* include/bits/sstream.tcc: Guard use of extern template.

From-SVN: r76698

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/sstream.tcc

index b3a706fa44b2883ba08b596b28f0d94cf27c9b37..d3c763e3401bb8151e63b933af2fd766896022b6 100644 (file)
@@ -1,3 +1,8 @@
+2004-01-27  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/13884
+       * include/bits/sstream.tcc: Guard use of extern template.
+       
 2004-01-27  Paolo Carlini  <pcarlini@suse.de>
 
        * include/bits/basic_string.tcc
index 07e13926ba94e7b917c08bb14db67f052d481c22..b3db928a054e7985549b8a6cf48858f34d9b947c 100644 (file)
@@ -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<char>;
   extern template class basic_istringstream<char>;
   extern template class basic_ostringstream<char>;
@@ -216,6 +217,7 @@ namespace std
   extern template class basic_ostringstream<wchar_t>;
   extern template class basic_stringstream<wchar_t>;
 #endif
+#endif
 } // namespace std
 
 #endif