Перед тем, как писать свой велосипед спрошу: Допустим gcc выдает мне следующее сообщение
/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/predefined_ops.h: In instantiation of «bool __gnu_cxx::__ops::_Iter_equals_val<_Value>::operator()(_Iterator) [with _Iterator = __gnu_cxx::__normal_iterator<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> >*, std::vector<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> > > >; _Value = const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> >]»:
/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/stl_algo.h:866:28: required from «_ForwardIterator std::__remove_if(_ForwardIterator, _ForwardIterator, _Predicate) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> >*, std::vector<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> > > >; _Predicate = __gnu_cxx::__ops::_Iter_equals_val<const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> > >]»
/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/predefined_ops.h: In instantiation of «
bool __gnu_cxx::__ops::_Iter_equals_val<_Value>::operator()(_Iterator) [
with _Iterator = __gnu_cxx::__normal_iterator<
std::pair<
std::pair<char, std::basic_string<char> >,
std::pair<long long int, long long int> >*,
std::vector<
std::pair<
std::pair<char, std::basic_string<char> >,
std::pair<long long int, long long int>
>
>
>;
_Value = const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> >
]
»:
/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/stl_algo.h:866:28: required from «
_ForwardIterator std::__remove_if(_ForwardIterator, _ForwardIterator, _Predicate) [
with _ForwardIterator = __gnu_cxx::__normal_iterator<
std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> >*,
std::vector<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> > >
>;
_Predicate = __gnu_cxx::__ops::_Iter_equals_val<
const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> >
>
]
»