diff options
author | Howard Hinnant <hhinnant@apple.com> | 2012-11-06 21:08:48 +0000 |
---|---|---|
committer | Howard Hinnant <hhinnant@apple.com> | 2012-11-06 21:08:48 +0000 |
commit | cd47cbc7a44604a65d3ef391822a32b79b2f61e4 (patch) | |
tree | a8a24b04b88d31cf33571aeadc5d3252ca45e831 /libcxx/include/__locale | |
parent | dc4ecaff07b62f7ddf4be17d72b336182382b0e5 (diff) | |
download | bcm5719-llvm-cd47cbc7a44604a65d3ef391822a32b79b2f61e4.tar.gz bcm5719-llvm-cd47cbc7a44604a65d3ef391822a32b79b2f61e4.zip |
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.
llvm-svn: 167486
Diffstat (limited to 'libcxx/include/__locale')
-rw-r--r-- | libcxx/include/__locale | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libcxx/include/__locale b/libcxx/include/__locale index e6c357f9e53..4176720c661 100644 --- a/libcxx/include/__locale +++ b/libcxx/include/__locale @@ -254,8 +254,8 @@ collate<_CharT>::do_hash(const char_type* __lo, const char_type* __hi) const return static_cast<long>(__h); } -extern template class _LIBCPP_VISIBLE collate<char>; -extern template class _LIBCPP_VISIBLE collate<wchar_t>; +_LIBCPP_EXTERN_TEMPLATE(class _LIBCPP_VISIBLE collate<char>) +_LIBCPP_EXTERN_TEMPLATE(class _LIBCPP_VISIBLE collate<wchar_t>) // template <class CharT> class collate_byname; @@ -1135,10 +1135,10 @@ codecvt_byname<_InternT, _ExternT, _StateT>::~codecvt_byname() { } -extern template class codecvt_byname<char, char, mbstate_t>; -extern template class codecvt_byname<wchar_t, char, mbstate_t>; -extern template class codecvt_byname<char16_t, char, mbstate_t>; -extern template class codecvt_byname<char32_t, char, mbstate_t>; +_LIBCPP_EXTERN_TEMPLATE(class codecvt_byname<char, char, mbstate_t>) +_LIBCPP_EXTERN_TEMPLATE(class codecvt_byname<wchar_t, char, mbstate_t>) +_LIBCPP_EXTERN_TEMPLATE(class codecvt_byname<char16_t, char, mbstate_t>) +_LIBCPP_EXTERN_TEMPLATE(class codecvt_byname<char32_t, char, mbstate_t>) _LIBCPP_VISIBLE void __throw_runtime_error(const char*); |