Index: include/__locale =================================================================== --- include/__locale +++ include/__locale @@ -162,6 +162,7 @@ } template +inline _LIBCPP_INLINE_VISIBILITY locale locale::combine(const locale& __other) const { @@ -316,6 +317,7 @@ }; template +inline _LIBCPP_INLINE_VISIBILITY bool locale::operator()(const basic_string<_CharT, _Traits, _Allocator>& __x, const basic_string<_CharT, _Traits, _Allocator>& __y) const Index: include/__mutex_base =================================================================== --- include/__mutex_base +++ include/__mutex_base @@ -368,6 +368,7 @@ #ifndef _LIBCPP_HAS_NO_THREADS template +inline _LIBCPP_INLINE_VISIBILITY void condition_variable::wait(unique_lock& __lk, _Predicate __pred) { @@ -376,6 +377,7 @@ } template +_LIBCPP_HIDDEN cv_status condition_variable::wait_until(unique_lock& __lk, const chrono::time_point<_Clock, _Duration>& __t) @@ -386,6 +388,7 @@ } template +_LIBCPP_HIDDEN bool condition_variable::wait_until(unique_lock& __lk, const chrono::time_point<_Clock, _Duration>& __t, @@ -400,6 +403,7 @@ } template +_LIBCPP_HIDDEN cv_status condition_variable::wait_for(unique_lock& __lk, const chrono::duration<_Rep, _Period>& __d) Index: include/condition_variable =================================================================== --- include/condition_variable +++ include/condition_variable @@ -191,6 +191,7 @@ }; template +_LIBCPP_HIDDEN void condition_variable_any::wait(_Lock& __lock) { @@ -212,6 +213,7 @@ } template +_LIBCPP_HIDDEN cv_status condition_variable_any::wait_until(_Lock& __lock, const chrono::time_point<_Clock, _Duration>& __t) Index: include/future =================================================================== --- include/future +++ include/future @@ -588,6 +588,7 @@ }; template +_LIBCPP_HIDDEN future_status __assoc_sub_state::wait_until(const chrono::time_point<_Clock, _Duration>& __abs_time) const { @@ -1716,6 +1717,7 @@ }; template +_LIBCPP_HIDDEN promise::promise(allocator_arg_t, const _Alloc& __a0) { typedef __assoc_sub_state_alloc<_Alloc> _State; Index: include/mutex =================================================================== --- include/mutex +++ include/mutex @@ -252,6 +252,7 @@ }; template +_LIBCPP_HIDDEN bool timed_mutex::try_lock_until(const chrono::time_point<_Clock, _Duration>& __t) { @@ -295,6 +296,7 @@ }; template +_LIBCPP_HIDDEN bool recursive_timed_mutex::try_lock_until(const chrono::time_point<_Clock, _Duration>& __t) { Index: include/thread =================================================================== --- include/thread +++ include/thread @@ -389,6 +389,7 @@ } template +_LIBCPP_HIDDEN thread::thread(_Fp __f) {