Index: include/future =================================================================== --- include/future +++ include/future @@ -528,7 +528,7 @@ #endif } -class _LIBCPP_TYPE_VIS _LIBCPP_AVAILABILITY_FUTURE __assoc_sub_state +class _LIBCPP_AVAILABILITY_FUTURE __assoc_sub_state : public __shared_count { protected: @@ -2298,7 +2298,7 @@ } template -class __async_func +class _LIBCPP_AVAILABILITY_FUTURE __async_func { tuple<_Fp, _Args...> __f_; @@ -2369,7 +2369,7 @@ // shared_future template -class _LIBCPP_TEMPLATE_VIS shared_future +class _LIBCPP_TEMPLATE_VIS _LIBCPP_AVAILABILITY_FUTURE shared_future { __assoc_state<_Rp>* __state_; @@ -2443,7 +2443,7 @@ } template -class _LIBCPP_TEMPLATE_VIS shared_future<_Rp&> +class _LIBCPP_TEMPLATE_VIS _LIBCPP_AVAILABILITY_FUTURE shared_future<_Rp&> { __assoc_state<_Rp&>* __state_; Index: include/shared_mutex =================================================================== --- include/shared_mutex +++ include/shared_mutex @@ -307,7 +307,7 @@ } template -class shared_lock +class _LIBCPP_TEMPLATE_VIS shared_lock { public: typedef _Mutex mutex_type;