Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

'is_invocable' error when compiling in Cygwin #53

Open
AlexSath opened this issue Mar 16, 2022 · 0 comments
Open

'is_invocable' error when compiling in Cygwin #53

AlexSath opened this issue Mar 16, 2022 · 0 comments

Comments

@AlexSath
Copy link

I've run into this error when trying to compile skewer on windows 10 using Cygwin. I've tried with GCC, g++, and clang. All show the following error (although clang shows traceback).

$ make CXX=clang
clang -c -std=c++17 -O2 src/matrix.cpp -o src/matrix.o
In file included from src/matrix.cpp:35:
In file included from src/matrix.h:37:
In file included from /usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/set:60:
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_tree.h:769:4: error:
      static_assert failed due to requirement 'is_invocable_v<const
      ElementComparator &, const ELEMENT &, const ELEMENT &>' "comparison object
      must be invocable as const"
          static_assert(
          ^
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_tree.h:1903:30: note: in
      instantiation of member function 'std::_Rb_tree<ELEMENT, ELEMENT,
      std::_Identity<ELEMENT>, ElementComparator, std::allocator<ELEMENT>
      >::_S_key' requested here
        if (!_M_impl._M_key_compare(_S_key(__x), __k))
                                    ^
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_tree.h:2521:22: note: in
      instantiation of member function 'std::_Rb_tree<ELEMENT, ELEMENT,
      std::_Identity<ELEMENT>, ElementComparator, std::allocator<ELEMENT>
      >::_M_lower_bound' requested here
      iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);
                     ^
/usr/lib/gcc/x86_64-pc-cygwin/11/include/c++/bits/stl_set.h:795:21: note: in
      instantiation of member function 'std::_Rb_tree<ELEMENT, ELEMENT,
      std::_Identity<ELEMENT>, ElementComparator, std::allocator<ELEMENT>
      >::find' requested here
      { return _M_t.find(__x); }
                    ^
src/matrix.cpp:147:35: note: in instantiation of member function
      'std::set<ELEMENT, ElementComparator, std::allocator<ELEMENT> >::find'
      requested here
        ELEMENT_SET::iterator it = this->find(val);
                                         ^
1 error generated.
make: *** [Makefile:35: src/matrix.o] Error 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant