diff --git a/include/__config b/include/__config index 41907a4b8..eef8c7811 100644 --- a/include/__config +++ b/include/__config @@ -538,7 +538,7 @@ template struct __static_assert_check {}; #endif #ifndef _LIBCPP_EXTERN_TEMPLATE -#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; +#define _LIBCPP_EXTERN_TEMPLATE(...) #endif #ifndef _LIBCPP_EXTERN_TEMPLATE2 diff --git a/src/algorithm.cpp b/src/algorithm.cpp index 6d5cf7c0b..10c4c3312 100644 --- a/src/algorithm.cpp +++ b/src/algorithm.cpp @@ -7,6 +7,7 @@ // //===----------------------------------------------------------------------===// +#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; #include "algorithm" #include "random" #include "mutex" diff --git a/src/ios.cpp b/src/ios.cpp index 732a61bb2..754c2c956 100644 --- a/src/ios.cpp +++ b/src/ios.cpp @@ -7,6 +7,8 @@ // //===----------------------------------------------------------------------===// +#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; + #include "ios" #include "streambuf" #include "istream" diff --git a/src/locale.cpp b/src/locale.cpp index ac1952151..49ffd8e02 100644 --- a/src/locale.cpp +++ b/src/locale.cpp @@ -7,6 +7,8 @@ // //===----------------------------------------------------------------------===// +#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; + // On Solaris, we need to define something to make the C99 parts of localeconv // visible. #ifdef __sun__ diff --git a/src/string.cpp b/src/string.cpp index 5a8691165..a6685839d 100644 --- a/src/string.cpp +++ b/src/string.cpp @@ -7,6 +7,8 @@ // //===----------------------------------------------------------------------===// +#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; + #include "string" #include "cstdlib" #include "cwchar" diff --git a/src/valarray.cpp b/src/valarray.cpp index 2d8db52ac..e4c9ed024 100644 --- a/src/valarray.cpp +++ b/src/valarray.cpp @@ -7,6 +7,8 @@ // //===----------------------------------------------------------------------===// +#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; + #include "valarray" _LIBCPP_BEGIN_NAMESPACE_STD