Provide a way to disable use of extern templates in libc++. This is intended for the clients of libc++, not the libc++ build. The dylib should always contain the extern templates. To disable the client needs to put -D'_LIBCPP_EXTERN_TEMPLATE(...)=' on the command line.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@167486 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Howard Hinnant
2012-11-06 21:08:48 +00:00
parent 73c85c7725
commit ff9267709d
10 changed files with 93 additions and 89 deletions

View File

@@ -4770,9 +4770,9 @@ end(const valarray<_Tp>& __v)
return __v.__end_;
}
extern template valarray<size_t>::valarray(size_t);
extern template valarray<size_t>::~valarray();
extern template void valarray<size_t>::resize(size_t, size_t);
_LIBCPP_EXTERN_TEMPLATE(valarray<size_t>::valarray(size_t))
_LIBCPP_EXTERN_TEMPLATE(valarray<size_t>::~valarray())
_LIBCPP_EXTERN_TEMPLATE(void valarray<size_t>::resize(size_t, size_t))
_LIBCPP_END_NAMESPACE_STD