56#define _GLIBCXX_LIST 1
59#pragma GCC system_header
74#define __glibcxx_want_algorithm_default_value_type
75#define __glibcxx_want_allocator_traits_is_always_equal
76#define __glibcxx_want_containers_ranges
77#define __glibcxx_want_erase_if
78#define __glibcxx_want_hardened_list
79#define __glibcxx_want_incomplete_container_elements
80#define __glibcxx_want_list_remove_return_type
81#define __glibcxx_want_nonmember_container_access
84#if __cplusplus >= 201703L
86namespace std _GLIBCXX_VISIBILITY(default)
88_GLIBCXX_BEGIN_NAMESPACE_VERSION
91 template<
typename _Tp>
92 using list = std::list<_Tp, polymorphic_allocator<_Tp>>;
94_GLIBCXX_END_NAMESPACE_VERSION
98#ifdef __cpp_lib_erase_if
99namespace std _GLIBCXX_VISIBILITY(default)
101_GLIBCXX_BEGIN_NAMESPACE_VERSION
102 template<
typename _Tp,
typename _Alloc,
typename _Predicate>
103 inline typename _GLIBCXX_STD_C::list<_Tp, _Alloc>::size_type
104 erase_if(_GLIBCXX_STD_C::list<_Tp, _Alloc>& __cont, _Predicate __pred)
105 {
return __cont.remove_if(__pred); }
107 template<
typename _Tp,
typename _Alloc,
108 typename _Up _GLIBCXX26_DEF_VAL_T(_Tp)>
109 inline typename _GLIBCXX_STD_C::list<_Tp, _Alloc>::size_type
110 erase(_GLIBCXX_STD_C::list<_Tp, _Alloc>& __cont,
const _Up& __value)
114 return std::erase_if(__cont, [&](
const auto& __elem) ->
bool {
115 return __elem == __value;
118_GLIBCXX_END_NAMESPACE_VERSION
ISO C++ entities toplevel namespace is std.