Index: include/__config =================================================================== --- include/__config +++ include/__config @@ -669,7 +669,7 @@ #ifndef _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS # if !defined(_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS) && __has_attribute(__type_visibility__) -# define _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS __attribute__ ((__type_visibility__("default"))) +# define _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS __attribute__ ((__visibility__("default"))) # else # define _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS # endif Index: include/locale =================================================================== --- include/locale +++ include/locale @@ -623,16 +623,19 @@ ~num_get() {} template + _LIBCPP_HIDDEN iter_type __do_get_floating_point (iter_type __b, iter_type __e, ios_base& __iob, ios_base::iostate& __err, _Fp& __v) const; template + _LIBCPP_HIDDEN iter_type __do_get_signed (iter_type __b, iter_type __e, ios_base& __iob, ios_base::iostate& __err, _Signed& __v) const; template + _LIBCPP_HIDDEN iter_type __do_get_unsigned (iter_type __b, iter_type __e, ios_base& __iob, ios_base::iostate& __err, _Unsigned& __v) const; Index: include/string =================================================================== --- include/string +++ include/string @@ -792,6 +792,7 @@ basic_string(const basic_string& __str, size_type __pos, const _Allocator& __a = _Allocator()); template + _LIBCPP_HIDDEN basic_string(const _Tp& __t, size_type __pos, size_type __n, const allocator_type& __a = allocator_type(), typename enable_if<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, void>::type* = 0);