summaryrefslogtreecommitdiffstats
path: root/gcc47-libstdc.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gcc47-libstdc.patch')
-rw-r--r--gcc47-libstdc.patch671
1 files changed, 0 insertions, 671 deletions
diff --git a/gcc47-libstdc.patch b/gcc47-libstdc.patch
deleted file mode 100644
index 45ff50e..0000000
--- a/gcc47-libstdc.patch
+++ /dev/null
@@ -1,671 +0,0 @@
---- origsrc/gcc-4.7.2/libstdc++-v3/config/os/mingw32/os_defines.h 2011-12-16 18:43:06.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/config/os/mingw32/os_defines.h 2012-10-31 16:49:35.703125000 +0000
-@@ -72,4 +72,10 @@
- #define _GLIBCXX_CDTOR_CALLABI __thiscall
- #endif
-
-+#ifdef _DLL
-+#define _GLIBCXX_IMPORT __attribute__((dllimport))
-+#else
-+#define _GLIBCXX_IMPORT
-+#endif
-+
- #endif
---- origsrc/gcc-4.7.2/libstdc++-v3/config/os/newlib/os_defines.h 2011-01-03 20:52:22.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/config/os/newlib/os_defines.h 2012-10-31 16:49:35.734375000 +0000
-@@ -35,6 +35,8 @@
-
- #ifdef __CYGWIN__
- #define _GLIBCXX_GTHREAD_USE_WEAK 0
-+#define __GXX_MERGED_TYPEINFO_NAMES 0
-+#define __GXX_TYPEINFO_EQUALITY_INLINE 0
-
- #if defined (_GLIBCXX_DLL)
- #define _GLIBCXX_PSEUDO_VISIBILITY_default __attribute__ ((__dllimport__))
-@@ -47,6 +49,13 @@
-
- // See libstdc++/20806.
- #define _GLIBCXX_HAVE_DOS_BASED_FILESYSTEM 1
-+
-+#ifdef _DLL
-+#define _GLIBCXX_IMPORT __attribute__((dllimport))
-+#else
-+#define _GLIBCXX_IMPORT
-+#endif
-+
- #endif
-
- #endif
---- origsrc/gcc-4.7.2/libstdc++-v3/include/backward/strstream 2011-02-01 01:31:42.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/backward/strstream 2012-10-31 16:49:37.468750000 +0000
-@@ -62,7 +62,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
-
- // Class strstreambuf, a streambuf class that manages an array of char.
- // Note that this class is not a template.
-- class strstreambuf : public basic_streambuf<char, char_traits<char> >
-+ class _GLIBCXX_IMPORT strstreambuf : public basic_streambuf<char, char_traits<char> >
- {
- public:
- // Types.
-@@ -124,7 +124,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- };
-
- // Class istrstream, an istream that manages a strstreambuf.
-- class istrstream : public basic_istream<char>
-+ class _GLIBCXX_IMPORT istrstream : public basic_istream<char>
- {
- public:
- explicit istrstream(char*);
-@@ -141,7 +141,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- };
-
- // Class ostrstream
-- class ostrstream : public basic_ostream<char>
-+ class _GLIBCXX_IMPORT ostrstream : public basic_ostream<char>
- {
- public:
- ostrstream();
-@@ -158,7 +158,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- };
-
- // Class strstream
-- class strstream : public basic_iostream<char>
-+ class _GLIBCXX_IMPORT strstream : public basic_iostream<char>
- {
- public:
- typedef char char_type;
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/basic_ios.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/basic_ios.tcc 2012-10-31 16:49:37.468750000 +0000
-@@ -176,10 +176,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class basic_ios<char>;
-+ extern template class _GLIBCXX_IMPORT basic_ios<char>;
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class basic_ios<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_ios<wchar_t>;
- #endif
- #endif
-
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/c++config 2011-11-02 04:23:33.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/c++config 2012-10-31 16:54:57.125000000 +0000
-@@ -225,6 +225,9 @@ namespace __gnu_cxx
- # define _GLIBCXX_END_NAMESPACE_VERSION
- #endif
-
-+#ifndef _GLIBCXX_IMPORT
-+#define _GLIBCXX_IMPORT
-+#endif
-
- // Inline namespaces for special modes: debug, parallel, profile.
- #if defined(_GLIBCXX_DEBUG) || defined(_GLIBCXX_PARALLEL) \
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/codecvt.h 2011-10-14 01:12:40.000000000 +0100
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/codecvt.h 2012-10-31 16:49:37.484375000 +0000
-@@ -479,7 +479,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class codecvt_byname<char, char, mbstate_t>;
-+ extern template class _GLIBCXX_IMPORT codecvt_byname<char, char, mbstate_t>;
-
- extern template
- const codecvt<char, char, mbstate_t>&
-@@ -490,7 +490,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- has_facet<codecvt<char, char, mbstate_t> >(const locale&);
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class codecvt_byname<wchar_t, char, mbstate_t>;
-+ extern template class _GLIBCXX_IMPORT codecvt_byname<wchar_t, char, mbstate_t>;
-
- extern template
- const codecvt<wchar_t, char, mbstate_t>&
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/fstream.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/fstream.tcc 2012-10-31 16:49:37.484375000 +0000
-@@ -965,16 +965,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class basic_filebuf<char>;
-- extern template class basic_ifstream<char>;
-- extern template class basic_ofstream<char>;
-- extern template class basic_fstream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_filebuf<char>;
-+ extern template class _GLIBCXX_IMPORT basic_ifstream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_ofstream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_fstream<char>;
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class basic_filebuf<wchar_t>;
-- extern template class basic_ifstream<wchar_t>;
-- extern template class basic_ofstream<wchar_t>;
-- extern template class basic_fstream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_filebuf<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_ifstream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_ofstream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_fstream<wchar_t>;
- #endif
- #endif
-
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/ios_base.h 2011-08-07 08:27:06.000000000 +0100
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/ios_base.h 2012-10-31 16:49:37.484375000 +0000
-@@ -198,7 +198,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * people will only see @c ios_base when they need to specify the full
- * name of the various I/O flags (e.g., the openmodes).
- */
-- class ios_base
-+ class _GLIBCXX_IMPORT ios_base
- {
- public:
-
-@@ -208,7 +208,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- *
- * 27.4.2.1.1 Class ios_base::failure
- */
-- class failure : public exception
-+ class _GLIBCXX_IMPORT failure : public exception
- {
- public:
- // _GLIBCXX_RESOLVE_LIB_DEFECTS
-@@ -532,7 +532,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Used to initialize standard streams. In theory, g++ could use
- // -finit-priority to order this stuff correctly without going
- // through these machinations.
-- class Init
-+ class _GLIBCXX_IMPORT Init
- {
- friend class ios_base;
- public:
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/istream.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/istream.tcc 2012-10-31 16:49:37.484375000 +0000
-@@ -1039,7 +1039,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class basic_istream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_istream<char>;
- extern template istream& ws(istream&);
- extern template istream& operator>>(istream&, char&);
- extern template istream& operator>>(istream&, char*);
-@@ -1062,10 +1062,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- extern template istream& istream::_M_extract(long double&);
- extern template istream& istream::_M_extract(void*&);
-
-- extern template class basic_iostream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_iostream<char>;
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class basic_istream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_istream<wchar_t>;
- extern template wistream& ws(wistream&);
- extern template wistream& operator>>(wistream&, wchar_t&);
- extern template wistream& operator>>(wistream&, wchar_t*);
-@@ -1084,7 +1084,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- extern template wistream& wistream::_M_extract(long double&);
- extern template wistream& wistream::_M_extract(void*&);
-
-- extern template class basic_iostream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_iostream<wchar_t>;
- #endif
- #endif
-
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/locale_classes.h 2011-12-10 15:33:06.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/locale_classes.h 2012-10-31 16:49:37.484375000 +0000
-@@ -61,7 +61,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * This library supports efficient construction and copying of locales
- * through a reference counting implementation of the locale class.
- */
-- class locale
-+ class _GLIBCXX_IMPORT locale
- {
- public:
- // Types:
-@@ -69,9 +69,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- typedef int category;
-
- // Forward decls and friends:
-- class facet;
-- class id;
-- class _Impl;
-+ class _GLIBCXX_IMPORT facet;
-+ class _GLIBCXX_IMPORT id;
-+ class _GLIBCXX_IMPORT _Impl;
-
- friend class facet;
- friend class _Impl;
-@@ -337,7 +337,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- *
- * Facets may not be copied or assigned.
- */
-- class locale::facet
-+ class _GLIBCXX_IMPORT locale::facet
- {
- private:
- friend class locale;
-@@ -435,7 +435,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * cannot be used in a locale. The locale::id ensures that each class
- * type gets a unique identifier.
- */
-- class locale::id
-+ class _GLIBCXX_IMPORT locale::id
- {
- private:
- friend class locale;
-@@ -474,7 +474,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
-
-
- // Implementation object for locale.
-- class locale::_Impl
-+ class _GLIBCXX_IMPORT locale::_Impl
- {
- public:
- // Friends.
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/locale_classes.tcc 2011-12-10 15:33:06.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/locale_classes.tcc 2012-10-31 16:49:37.500000000 +0000
-@@ -265,8 +265,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class collate<char>;
-- extern template class collate_byname<char>;
-+ extern template class _GLIBCXX_IMPORT collate<char>;
-+ extern template class _GLIBCXX_IMPORT collate_byname<char>;
-
- extern template
- const collate<char>&
-@@ -277,8 +277,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- has_facet<collate<char> >(const locale&);
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class collate<wchar_t>;
-- extern template class collate_byname<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT collate<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT collate_byname<wchar_t>;
-
- extern template
- const collate<wchar_t>&
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/locale_facets.h 2012-02-23 22:14:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/locale_facets.h 2012-10-31 16:49:37.500000000 +0000
-@@ -673,7 +673,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * optimizations as well.
- */
- template<>
-- class ctype<char> : public locale::facet, public ctype_base
-+ class _GLIBCXX_IMPORT ctype<char> : public locale::facet, public ctype_base
- {
- public:
- // Types:
-@@ -1174,7 +1174,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * __ctype_abstract_base<wchar_t>.
- */
- template<>
-- class ctype<wchar_t> : public __ctype_abstract_base<wchar_t>
-+ class _GLIBCXX_IMPORT ctype<wchar_t> : public __ctype_abstract_base<wchar_t>
- {
- public:
- // Types:
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/locale_facets.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/locale_facets.tcc 2012-10-31 17:00:42.531250000 +0000
-@@ -1277,11 +1277,11 @@ _GLIBCXX_END_NAMESPACE_LDBL
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class numpunct<char>;
-- extern template class numpunct_byname<char>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL num_get<char>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL num_put<char>;
-- extern template class ctype_byname<char>;
-+ extern template class _GLIBCXX_IMPORT numpunct<char>;
-+ extern template class _GLIBCXX_IMPORT numpunct_byname<char>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL num_get<char>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL num_put<char>;
-+ extern template class _GLIBCXX_IMPORT ctype_byname<char>;
-
- extern template
- const ctype<char>&
-@@ -1316,11 +1316,11 @@ _GLIBCXX_END_NAMESPACE_LDBL
- has_facet<num_get<char> >(const locale&);
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class numpunct<wchar_t>;
-- extern template class numpunct_byname<wchar_t>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL num_get<wchar_t>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL num_put<wchar_t>;
-- extern template class ctype_byname<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT numpunct<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT numpunct_byname<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL num_get<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL num_put<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT ctype_byname<wchar_t>;
-
- extern template
- const ctype<wchar_t>&
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/locale_facets_nonio.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/locale_facets_nonio.tcc 2012-10-31 17:00:42.546875000 +0000
-@@ -1216,19 +1216,19 @@ _GLIBCXX_END_NAMESPACE_LDBL
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class moneypunct<char, false>;
-- extern template class moneypunct<char, true>;
-- extern template class moneypunct_byname<char, false>;
-- extern template class moneypunct_byname<char, true>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL money_get<char>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL money_put<char>;
-- extern template class __timepunct<char>;
-- extern template class time_put<char>;
-- extern template class time_put_byname<char>;
-- extern template class time_get<char>;
-- extern template class time_get_byname<char>;
-- extern template class messages<char>;
-- extern template class messages_byname<char>;
-+ extern template class _GLIBCXX_IMPORT moneypunct<char, false>;
-+ extern template class _GLIBCXX_IMPORT moneypunct<char, true>;
-+ extern template class _GLIBCXX_IMPORT moneypunct_byname<char, false>;
-+ extern template class _GLIBCXX_IMPORT moneypunct_byname<char, true>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL money_get<char>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL money_put<char>;
-+ extern template class _GLIBCXX_IMPORT __timepunct<char>;
-+ extern template class _GLIBCXX_IMPORT time_put<char>;
-+ extern template class _GLIBCXX_IMPORT time_put_byname<char>;
-+ extern template class _GLIBCXX_IMPORT time_get<char>;
-+ extern template class _GLIBCXX_IMPORT time_get_byname<char>;
-+ extern template class _GLIBCXX_IMPORT messages<char>;
-+ extern template class _GLIBCXX_IMPORT messages_byname<char>;
-
- extern template
- const moneypunct<char, true>&
-@@ -1291,19 +1291,19 @@ _GLIBCXX_END_NAMESPACE_LDBL
- has_facet<messages<char> >(const locale&);
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class moneypunct<wchar_t, false>;
-- extern template class moneypunct<wchar_t, true>;
-- extern template class moneypunct_byname<wchar_t, false>;
-- extern template class moneypunct_byname<wchar_t, true>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL money_get<wchar_t>;
-- extern template class _GLIBCXX_NAMESPACE_LDBL money_put<wchar_t>;
-- extern template class __timepunct<wchar_t>;
-- extern template class time_put<wchar_t>;
-- extern template class time_put_byname<wchar_t>;
-- extern template class time_get<wchar_t>;
-- extern template class time_get_byname<wchar_t>;
-- extern template class messages<wchar_t>;
-- extern template class messages_byname<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT moneypunct<wchar_t, false>;
-+ extern template class _GLIBCXX_IMPORT moneypunct<wchar_t, true>;
-+ extern template class _GLIBCXX_IMPORT moneypunct_byname<wchar_t, false>;
-+ extern template class _GLIBCXX_IMPORT moneypunct_byname<wchar_t, true>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL money_get<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT _GLIBCXX_NAMESPACE_LDBL money_put<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT __timepunct<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT time_put<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT time_put_byname<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT time_get<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT time_get_byname<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT messages<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT messages_byname<wchar_t>;
-
- extern template
- const moneypunct<wchar_t, true>&
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/ostream.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/ostream.tcc 2012-10-31 16:49:37.515625000 +0000
-@@ -358,7 +358,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class basic_ostream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_ostream<char>;
- extern template ostream& endl(ostream&);
- extern template ostream& ends(ostream&);
- extern template ostream& flush(ostream&);
-@@ -381,7 +381,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- extern template ostream& ostream::_M_insert(const void*);
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class basic_ostream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_ostream<wchar_t>;
- extern template wostream& endl(wostream&);
- extern template wostream& ends(wostream&);
- extern template wostream& flush(wostream&);
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/sstream.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/sstream.tcc 2012-10-31 16:49:37.515625000 +0000
-@@ -271,16 +271,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class basic_stringbuf<char>;
-- extern template class basic_istringstream<char>;
-- extern template class basic_ostringstream<char>;
-- extern template class basic_stringstream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_stringbuf<char>;
-+ extern template class _GLIBCXX_IMPORT basic_istringstream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_ostringstream<char>;
-+ extern template class _GLIBCXX_IMPORT basic_stringstream<char>;
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class basic_stringbuf<wchar_t>;
-- extern template class basic_istringstream<wchar_t>;
-- extern template class basic_ostringstream<wchar_t>;
-- extern template class basic_stringstream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_stringbuf<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_istringstream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_ostringstream<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_stringstream<wchar_t>;
- #endif
- #endif
-
---- origsrc/gcc-4.7.2/libstdc++-v3/include/bits/streambuf.tcc 2011-03-04 21:51:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/bits/streambuf.tcc 2012-10-31 16:49:37.515625000 +0000
-@@ -147,7 +147,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- // Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
- #if _GLIBCXX_EXTERN_TEMPLATE
-- extern template class basic_streambuf<char>;
-+ extern template class _GLIBCXX_IMPORT basic_streambuf<char>;
- extern template
- streamsize
- __copy_streambufs(basic_streambuf<char>*,
-@@ -158,7 +158,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- basic_streambuf<char>*, bool&);
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern template class basic_streambuf<wchar_t>;
-+ extern template class _GLIBCXX_IMPORT basic_streambuf<wchar_t>;
- extern template
- streamsize
- __copy_streambufs(basic_streambuf<wchar_t>*,
---- origsrc/gcc-4.7.2/libstdc++-v3/include/ext/concurrence.h 2012-07-16 23:34:13.000000000 +0100
-+++ src/gcc-4.7.2/libstdc++-v3/include/ext/concurrence.h 2012-10-31 16:49:37.515625000 +0000
-@@ -65,7 +65,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
-
- // NB: As this is used in libsupc++, need to only depend on
- // exception. No stdexception classes, no use of std::string.
-- class __concurrence_lock_error : public std::exception
-+ class _GLIBCXX_IMPORT __concurrence_lock_error : public std::exception
- {
- public:
- virtual char const*
-@@ -73,7 +73,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- { return "__gnu_cxx::__concurrence_lock_error"; }
- };
-
-- class __concurrence_unlock_error : public std::exception
-+ class _GLIBCXX_IMPORT __concurrence_unlock_error : public std::exception
- {
- public:
- virtual char const*
---- origsrc/gcc-4.7.2/libstdc++-v3/include/std/iostream 2011-01-30 22:39:36.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/std/iostream 2012-10-31 16:53:39.078125000 +0000
-@@ -58,16 +58,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * linked to above.
- */
- //@{
-- extern istream cin; /// Linked to standard input
-- extern ostream cout; /// Linked to standard output
-- extern ostream cerr; /// Linked to standard error (unbuffered)
-- extern ostream clog; /// Linked to standard error (buffered)
-+ extern _GLIBCXX_IMPORT istream cin; /// Linked to standard input
-+ extern _GLIBCXX_IMPORT ostream cout; /// Linked to standard output
-+ extern _GLIBCXX_IMPORT ostream cerr; /// Linked to standard error (unbuffered)
-+ extern _GLIBCXX_IMPORT ostream clog; /// Linked to standard error (buffered)
-
- #ifdef _GLIBCXX_USE_WCHAR_T
-- extern wistream wcin; /// Linked to standard input
-- extern wostream wcout; /// Linked to standard output
-- extern wostream wcerr; /// Linked to standard error (unbuffered)
-- extern wostream wclog; /// Linked to standard error (buffered)
-+ extern _GLIBCXX_IMPORT wistream wcin; /// Linked to standard input
-+ extern _GLIBCXX_IMPORT wostream wcout; /// Linked to standard output
-+ extern _GLIBCXX_IMPORT wostream wcerr; /// Linked to standard error (unbuffered)
-+ extern _GLIBCXX_IMPORT wostream wclog; /// Linked to standard error (buffered)
- #endif
- //@}
-
---- origsrc/gcc-4.7.2/libstdc++-v3/include/std/stdexcept 2011-12-06 20:03:25.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/include/std/stdexcept 2012-10-31 17:02:54.890625000 +0000
-@@ -53,7 +53,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * program runs (e.g., violations of class invariants).
- * @brief One of two subclasses of exception.
- */
-- class logic_error : public exception
-+ class _GLIBCXX_IMPORT logic_error : public exception
- {
- string _M_msg;
-
-@@ -72,7 +72,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
-
- /** Thrown by the library, or by you, to report domain errors (domain in
- * the mathematical sense). */
-- class domain_error : public logic_error
-+ class _GLIBCXX_IMPORT domain_error : public logic_error
- {
- public:
- explicit domain_error(const string& __arg);
-@@ -80,7 +80,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- };
-
- /** Thrown to report invalid arguments to functions. */
-- class invalid_argument : public logic_error
-+ class _GLIBCXX_IMPORT invalid_argument : public logic_error
- {
- public:
- explicit invalid_argument(const string& __arg);
-@@ -89,7 +89,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
-
- /** Thrown when an object is constructed that would exceed its maximum
- * permitted size (e.g., a basic_string instance). */
-- class length_error : public logic_error
-+ class _GLIBCXX_IMPORT length_error : public logic_error
- {
- public:
- explicit length_error(const string& __arg);
-@@ -98,7 +98,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
-
- /** This represents an argument whose value is not within the expected
- * range (e.g., boundary checks in basic_string). */
-- class out_of_range : public logic_error
-+ class _GLIBCXX_IMPORT out_of_range : public logic_error
- {
- public:
- explicit out_of_range(const string& __arg);
-@@ -110,7 +110,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- * the program executes.
- * @brief One of two subclasses of exception.
- */
-- class runtime_error : public exception
-+ class _GLIBCXX_IMPORT runtime_error : public exception
- {
- string _M_msg;
-
-@@ -128,7 +128,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- };
-
- /** Thrown to indicate range errors in internal computations. */
-- class range_error : public runtime_error
-+ class _GLIBCXX_IMPORT range_error : public runtime_error
- {
- public:
- explicit range_error(const string& __arg);
-@@ -144,7 +144,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- };
-
- /** Thrown to indicate arithmetic underflow. */
-- class underflow_error : public runtime_error
-+ class _GLIBCXX_IMPORT underflow_error : public runtime_error
- {
- public:
- explicit underflow_error(const string& __arg);
---- origsrc/gcc-4.7.2/libstdc++-v3/libsupc++/exception 2011-12-07 04:03:25.000000000 +0800
-+++ src/gcc-4.7.2/libstdc++-v3/libsupc++/exception 2013-02-26 19:27:32.575916600 +0800
-@@ -59,7 +59,7 @@ namespace std
- * your own %exception classes, or use a different hierarchy, or to
- * throw non-class data (e.g., fundamental types).
- */
-- class exception
-+ class _GLIBCXX_IMPORT exception
- {
- public:
- exception() _GLIBCXX_USE_NOEXCEPT { }
-@@ -72,7 +72,7 @@ namespace std
-
- /** If an %exception is thrown which is not listed in a function's
- * %exception specification, one of these may be thrown. */
-- class bad_exception : public exception
-+ class _GLIBCXX_IMPORT bad_exception : public exception
- {
- public:
- bad_exception() _GLIBCXX_USE_NOEXCEPT { }
---- origsrc/gcc-4.7.2/libstdc++-v3/libsupc++/new 2011-10-12 19:40:58.000000000 +0100
-+++ src/gcc-4.7.2/libstdc++-v3/libsupc++/new 2012-10-31 16:49:37.578125000 +0000
-@@ -53,7 +53,7 @@ namespace std
- *
- * @c bad_alloc (or classes derived from it) is used to report allocation
- * errors from the throwing forms of @c new. */
-- class bad_alloc : public exception
-+ class _GLIBCXX_IMPORT bad_alloc : public exception
- {
- public:
- bad_alloc() throw() { }
---- origsrc/gcc-4.7.2/libstdc++-v3/libsupc++/typeinfo 2012-01-27 19:38:56.000000000 +0000
-+++ src/gcc-4.7.2/libstdc++-v3/libsupc++/typeinfo 2012-10-31 17:07:07.796875000 +0000
-@@ -87,7 +87,7 @@ namespace std
- * The @c type_info class describes type information generated by
- * an implementation.
- */
-- class type_info
-+ class _GLIBCXX_IMPORT type_info
- {
- public:
- /** Destructor first. Being the first non-inline virtual function, this
-@@ -186,7 +186,7 @@ namespace std
- *
- * If you attempt an invalid @c dynamic_cast expression, an instance of
- * this class (or something derived from this class) is thrown. */
-- class bad_cast : public exception
-+ class _GLIBCXX_IMPORT bad_cast : public exception
- {
- public:
- bad_cast() _GLIBCXX_USE_NOEXCEPT { }
-@@ -203,7 +203,7 @@ namespace std
- * @brief Thrown when a NULL pointer in a @c typeid expression is used.
- * @ingroup exceptions
- */
-- class bad_typeid : public exception
-+ class _GLIBCXX_IMPORT bad_typeid : public exception
- {
- public:
- bad_typeid () _GLIBCXX_USE_NOEXCEPT { }
---- origsrc/gcc-4.7.2/libstdc++-v3/testsuite/lib/libstdc++.exp 2012-08-06 22:34:27.000000000 +0800
-+++ src/gcc-4.7.2/libstdc++-v3/testsuite/lib/libstdc++.exp 2013-02-26 19:31:07.934763700 +0800
-@@ -146,6 +146,9 @@ proc libstdc++_init { testfile } {
- set gccdir [file dirname $gccdir]
- append ld_library_path_tmp ":${gccdir}"
- }
-+ if { [string match "*-*-cygwin*" $target_triplet] } {
-+ append ld_library_path_tmp ":${blddir}/../libgcc"
-+ }
- v3track gccdir 3
-
- # Locate libgomp. This is only required for parallel mode.