fork(9) download
  1. /*
  2.  * test.cpp
  3.  *
  4.  * Created on: Mar 1, 2014
  5.  * Author: jb
  6.  */
  7.  
  8.  
  9. #include<functional>
  10. #include<algorithm>
  11. #include<array>
  12. #include<stdexcept>
  13.  
  14.  
  15. int main(int argc,char** argv){
  16. std::array<double, 3> arr;
  17.  
  18. arr[0] = 0; arr[1] = 1; arr[2] = 1;
  19.  
  20. if (std::any_of(arr.begin(), arr.end(),
  21. std::bind(std::less_equal<double>(), std::placeholders::_2, 0))){
  22. throw std::invalid_argument("Geometry with bin width less or equal to zero");
  23. }
  24. }
  25.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from prog.cpp:10:
/usr/include/c++/4.8/bits/stl_algo.h: In instantiation of ‘_RandomAccessIterator std::__find_if(_RandomAccessIterator, _RandomAccessIterator, _Predicate, std::random_access_iterator_tag) [with _RandomAccessIterator = double*; _Predicate = std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>]’:
/usr/include/c++/4.8/bits/stl_algo.h:4488:41:   required from ‘_IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter = double*; _Predicate = std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>]’
/usr/include/c++/4.8/bits/stl_algo.h:771:71:   required from ‘bool std::none_of(_IIter, _IIter, _Predicate) [with _IIter = double*; _Predicate = std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>]’
/usr/include/c++/4.8/bits/stl_algo.h:789:51:   required from ‘bool std::any_of(_IIter, _IIter, _Predicate) [with _IIter = double*; _Predicate = std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>]’
prog.cpp:21:68:   required from here
/usr/include/c++/4.8/bits/stl_algo.h:208:23: error: no match for call to ‘(std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>) (double&)’
    if (__pred(*__first))
                       ^
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1280:11: note: candidates are:
     class _Bind<_Functor(_Bound_args...)>
           ^
/usr/include/c++/4.8/functional:1351:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args)
  ^
/usr/include/c++/4.8/functional:1351:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1347:37: error: no match for call to ‘(std::less_equal<double>) (std::_No_tuple_element, int&)’
  = decltype( std::declval<_Functor>()(
                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1365:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const
  ^
/usr/include/c++/4.8/functional:1365:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1361:53: error: no match for call to ‘(const std::less_equal<double>) (std::_No_tuple_element, const int&)’
          typename add_const<_Functor>::type>::type>()(
                                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1379:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) volatile
  ^
/usr/include/c++/4.8/functional:1379:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1375:70: error: no match for call to ‘(volatile std::less_equal<double>) (std::_No_tuple_element, volatile int&)’
                        typename add_volatile<_Functor>::type>::type>()(
                                                                      ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1393:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const volatile
  ^
/usr/include/c++/4.8/functional:1393:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1389:64: error: no match for call to ‘(const volatile std::less_equal<double>) (std::_No_tuple_element, const volatile int&)’
                        typename add_cv<_Functor>::type>::type>()(
                                                                ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from prog.cpp:10:
/usr/include/c++/4.8/bits/stl_algo.h:212:23: error: no match for call to ‘(std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>) (double&)’
    if (__pred(*__first))
                       ^
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1280:11: note: candidates are:
     class _Bind<_Functor(_Bound_args...)>
           ^
/usr/include/c++/4.8/functional:1351:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args)
  ^
/usr/include/c++/4.8/functional:1351:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1347:37: error: no match for call to ‘(std::less_equal<double>) (std::_No_tuple_element, int&)’
  = decltype( std::declval<_Functor>()(
                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1365:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const
  ^
/usr/include/c++/4.8/functional:1365:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1361:53: error: no match for call to ‘(const std::less_equal<double>) (std::_No_tuple_element, const int&)’
          typename add_const<_Functor>::type>::type>()(
                                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1379:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) volatile
  ^
/usr/include/c++/4.8/functional:1379:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1375:70: error: no match for call to ‘(volatile std::less_equal<double>) (std::_No_tuple_element, volatile int&)’
                        typename add_volatile<_Functor>::type>::type>()(
                                                                      ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1393:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const volatile
  ^
/usr/include/c++/4.8/functional:1393:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1389:64: error: no match for call to ‘(const volatile std::less_equal<double>) (std::_No_tuple_element, const volatile int&)’
                        typename add_cv<_Functor>::type>::type>()(
                                                                ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from prog.cpp:10:
/usr/include/c++/4.8/bits/stl_algo.h:216:23: error: no match for call to ‘(std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>) (double&)’
    if (__pred(*__first))
                       ^
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1280:11: note: candidates are:
     class _Bind<_Functor(_Bound_args...)>
           ^
/usr/include/c++/4.8/functional:1351:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args)
  ^
/usr/include/c++/4.8/functional:1351:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1347:37: error: no match for call to ‘(std::less_equal<double>) (std::_No_tuple_element, int&)’
  = decltype( std::declval<_Functor>()(
                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1365:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const
  ^
/usr/include/c++/4.8/functional:1365:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1361:53: error: no match for call to ‘(const std::less_equal<double>) (std::_No_tuple_element, const int&)’
          typename add_const<_Functor>::type>::type>()(
                                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1379:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) volatile
  ^
/usr/include/c++/4.8/functional:1379:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1375:70: error: no match for call to ‘(volatile std::less_equal<double>) (std::_No_tuple_element, volatile int&)’
                        typename add_volatile<_Functor>::type>::type>()(
                                                                      ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1393:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const volatile
  ^
/usr/include/c++/4.8/functional:1393:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1389:64: error: no match for call to ‘(const volatile std::less_equal<double>) (std::_No_tuple_element, const volatile int&)’
                        typename add_cv<_Functor>::type>::type>()(
                                                                ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from prog.cpp:10:
/usr/include/c++/4.8/bits/stl_algo.h:220:23: error: no match for call to ‘(std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>) (double&)’
    if (__pred(*__first))
                       ^
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1280:11: note: candidates are:
     class _Bind<_Functor(_Bound_args...)>
           ^
/usr/include/c++/4.8/functional:1351:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args)
  ^
/usr/include/c++/4.8/functional:1351:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1347:37: error: no match for call to ‘(std::less_equal<double>) (std::_No_tuple_element, int&)’
  = decltype( std::declval<_Functor>()(
                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1365:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const
  ^
/usr/include/c++/4.8/functional:1365:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1361:53: error: no match for call to ‘(const std::less_equal<double>) (std::_No_tuple_element, const int&)’
          typename add_const<_Functor>::type>::type>()(
                                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1379:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) volatile
  ^
/usr/include/c++/4.8/functional:1379:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1375:70: error: no match for call to ‘(volatile std::less_equal<double>) (std::_No_tuple_element, volatile int&)’
                        typename add_volatile<_Functor>::type>::type>()(
                                                                      ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1393:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const volatile
  ^
/usr/include/c++/4.8/functional:1393:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1389:64: error: no match for call to ‘(const volatile std::less_equal<double>) (std::_No_tuple_element, const volatile int&)’
                        typename add_cv<_Functor>::type>::type>()(
                                                                ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from prog.cpp:10:
/usr/include/c++/4.8/bits/stl_algo.h:228:23: error: no match for call to ‘(std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>) (double&)’
    if (__pred(*__first))
                       ^
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1280:11: note: candidates are:
     class _Bind<_Functor(_Bound_args...)>
           ^
/usr/include/c++/4.8/functional:1351:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args)
  ^
/usr/include/c++/4.8/functional:1351:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1347:37: error: no match for call to ‘(std::less_equal<double>) (std::_No_tuple_element, int&)’
  = decltype( std::declval<_Functor>()(
                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1365:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const
  ^
/usr/include/c++/4.8/functional:1365:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1361:53: error: no match for call to ‘(const std::less_equal<double>) (std::_No_tuple_element, const int&)’
          typename add_const<_Functor>::type>::type>()(
                                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1379:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) volatile
  ^
/usr/include/c++/4.8/functional:1379:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1375:70: error: no match for call to ‘(volatile std::less_equal<double>) (std::_No_tuple_element, volatile int&)’
                        typename add_volatile<_Functor>::type>::type>()(
                                                                      ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1393:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const volatile
  ^
/usr/include/c++/4.8/functional:1393:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1389:64: error: no match for call to ‘(const volatile std::less_equal<double>) (std::_No_tuple_element, const volatile int&)’
                        typename add_cv<_Functor>::type>::type>()(
                                                                ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from prog.cpp:10:
/usr/include/c++/4.8/bits/stl_algo.h:232:23: error: no match for call to ‘(std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>) (double&)’
    if (__pred(*__first))
                       ^
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1280:11: note: candidates are:
     class _Bind<_Functor(_Bound_args...)>
           ^
/usr/include/c++/4.8/functional:1351:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args)
  ^
/usr/include/c++/4.8/functional:1351:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1347:37: error: no match for call to ‘(std::less_equal<double>) (std::_No_tuple_element, int&)’
  = decltype( std::declval<_Functor>()(
                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1365:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const
  ^
/usr/include/c++/4.8/functional:1365:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1361:53: error: no match for call to ‘(const std::less_equal<double>) (std::_No_tuple_element, const int&)’
          typename add_const<_Functor>::type>::type>()(
                                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1379:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) volatile
  ^
/usr/include/c++/4.8/functional:1379:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1375:70: error: no match for call to ‘(volatile std::less_equal<double>) (std::_No_tuple_element, volatile int&)’
                        typename add_volatile<_Functor>::type>::type>()(
                                                                      ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1393:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const volatile
  ^
/usr/include/c++/4.8/functional:1393:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1389:64: error: no match for call to ‘(const volatile std::less_equal<double>) (std::_No_tuple_element, const volatile int&)’
                        typename add_cv<_Functor>::type>::type>()(
                                                                ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from /usr/include/c++/4.8/algorithm:62:0,
                 from prog.cpp:10:
/usr/include/c++/4.8/bits/stl_algo.h:236:23: error: no match for call to ‘(std::_Bind<std::less_equal<double>(std::_Placeholder<2>, int)>) (double&)’
    if (__pred(*__first))
                       ^
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1280:11: note: candidates are:
     class _Bind<_Functor(_Bound_args...)>
           ^
/usr/include/c++/4.8/functional:1351:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args)
  ^
/usr/include/c++/4.8/functional:1351:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1347:37: error: no match for call to ‘(std::less_equal<double>) (std::_No_tuple_element, int&)’
  = decltype( std::declval<_Functor>()(
                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1365:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const
  ^
/usr/include/c++/4.8/functional:1365:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1361:53: error: no match for call to ‘(const std::less_equal<double>) (std::_No_tuple_element, const int&)’
          typename add_const<_Functor>::type>::type>()(
                                                     ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1379:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) volatile
  ^
/usr/include/c++/4.8/functional:1379:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1375:70: error: no match for call to ‘(volatile std::less_equal<double>) (std::_No_tuple_element, volatile int&)’
                        typename add_volatile<_Functor>::type>::type>()(
                                                                      ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
In file included from prog.cpp:9:0:
/usr/include/c++/4.8/functional:1393:2: note: template<class ... _Args, class _Result> _Result std::_Bind<_Functor(_Bound_args ...)>::operator()(_Args&& ...) const volatile [with _Args = {_Args ...}; _Result = _Result; _Functor = std::less_equal<double>; _Bound_args = {std::_Placeholder<2>, int}]
  operator()(_Args&&... __args) const volatile
  ^
/usr/include/c++/4.8/functional:1393:2: note:   template argument deduction/substitution failed:
/usr/include/c++/4.8/functional:1389:64: error: no match for call to ‘(const volatile std::less_equal<double>) (std::_No_tuple_element, const volatile int&)’
                        typename add_cv<_Functor>::type>::type>()(
                                                                ^
In file included from /usr/include/c++/4.8/functional:49:0,
                 from prog.cpp:9:
/usr/include/c++/4.8/bits/stl_function.h:249:12: note: candidate is:
     struct less_equal : public binary_function<_Tp, _Tp, bool>
            ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note: bool std::less_equal<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = double]
       operator()(const _Tp& __x, const _Tp& __y) const
       ^
/usr/include/c++/4.8/bits/stl_function.h:252:7: note:   no known conversion for argument 1 from ‘std::_No_tuple_element’ to ‘const double&’
stdout
Standard output is empty