Index: include/experimental/forward_list =================================================================== --- include/experimental/forward_list (revision 222661) +++ include/experimental/forward_list (working copy) @@ -46,12 +46,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template - void + inline void erase_if(forward_list<_Tp, _Alloc>& __cont, _Predicate __pred) { __cont.remove_if(__pred); } template - void erase(forward_list<_Tp, _Alloc>& __cont, const _Up& __value) + inline void + erase(forward_list<_Tp, _Alloc>& __cont, const _Up& __value) { using __elem_type = typename forward_list<_Tp, _Alloc>::value_type; erase_if(__cont, [&](__elem_type& __elem) { return __elem == __value; }); Index: include/experimental/list =================================================================== --- include/experimental/list (revision 222661) +++ include/experimental/list (working copy) @@ -46,12 +46,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template - void + inline void erase_if(list<_Tp, _Alloc>& __cont, _Predicate __pred) { __cont.remove_if(__pred); } template - void + inline void erase(list<_Tp, _Alloc>& __cont, const _Up& __value) { using __elem_type = typename list<_Tp, _Alloc>::value_type; Index: include/experimental/map =================================================================== --- include/experimental/map (revision 222661) +++ include/experimental/map (working copy) @@ -48,13 +48,13 @@ template - void + inline void erase_if(map<_Key, _Tp, _Compare, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } template - void + inline void erase_if(multimap<_Key, _Tp, _Compare, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } Index: include/experimental/set =================================================================== --- include/experimental/set (revision 222661) +++ include/experimental/set (working copy) @@ -48,13 +48,13 @@ template - void + inline void erase_if(set<_Key, _Compare, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } template - void + inline void erase_if(multiset<_Key, _Compare, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } Index: include/experimental/string =================================================================== --- include/experimental/string (revision 222661) +++ include/experimental/string (working copy) @@ -48,7 +48,7 @@ template - void + inline void erase_if(basic_string<_CharT, _Traits, _Alloc>& __cont, _Predicate __pred) { __cont.erase(std::remove_if(__cont.begin(), __cont.end(), __pred), @@ -56,7 +56,7 @@ } template - void + inline void erase(basic_string<_CharT, _Traits, _Alloc>& __cont, const _Up& __value) { __cont.erase(std::remove(__cont.begin(), __cont.end(), __value), Index: include/experimental/unordered_map =================================================================== --- include/experimental/unordered_map (revision 222661) +++ include/experimental/unordered_map (working copy) @@ -48,7 +48,7 @@ template - void + inline void erase_if(unordered_map<_Key, _Tp, _Hash, _CPred, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } @@ -55,7 +55,7 @@ template - void + inline void erase_if(unordered_multimap<_Key, _Tp, _Hash, _CPred, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } Index: include/experimental/unordered_set =================================================================== --- include/experimental/unordered_set (revision 222661) +++ include/experimental/unordered_set (working copy) @@ -48,7 +48,7 @@ template - void + inline void erase_if(unordered_set<_Key, _Hash, _CPred, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } @@ -55,7 +55,7 @@ template - void + inline void erase_if(unordered_multiset<_Key, _Hash, _CPred, _Alloc>& __cont, _Predicate __pred) { __detail::__erase_nodes_if(__cont, __pred); } Index: include/experimental/vector =================================================================== --- include/experimental/vector (revision 222661) +++ include/experimental/vector (working copy) @@ -47,7 +47,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template - void + inline void erase_if(vector<_Tp, _Alloc>& __cont, _Predicate __pred) { __cont.erase(std::remove_if(__cont.begin(), __cont.end(), __pred), @@ -55,7 +55,7 @@ } template - void + inline void erase(vector<_Tp, _Alloc>& __cont, const _Up& __value) { __cont.erase(std::remove(__cont.begin(), __cont.end(), __value),