In file included from /in/Compile/check.cpp:7:
/in/sokoban.hpp:82:30: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
int nr = r + dy[d];
~ ^~~~~
/in/sokoban.hpp:83:30: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
int nc = c + dx[d];
~ ^~~~~
/in/sokoban.hpp:88:30: error: implicit conversion changes signedness: 'int' to 'std::vector::size_type' (aka 'unsigned long') [-Werror,-Wsign-conversion]
if (grid[nr][nc] != '#' && !(reachable & (1ULL << neighbor))) {
~~~~ ^~
/in/sokoban.hpp:88:34: error: implicit conversion changes signedness: 'int' to 'std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size_type' (aka 'unsigned long') [-Werror,-Wsign-conversion]
if (grid[nr][nc] != '#' && !(reachable & (1ULL << neighbor))) {
~~~~ ^~
/in/sokoban.hpp:90:32: error: implicit conversion changes signedness: 'int' to 'std::queue<unsigned long, std::deque<unsigned long, std::allocator<unsigned long> > >::value_type' (aka 'unsigned long') [-Werror,-Wsign-conversion]
q.push(neighbor);
~~~~ ^~~~~~~~
/in/sokoban.hpp:82:28: error: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Werror,-Wshorten-64-to-32]
int nr = r + dy[d];
~~ ~~^~~~~~~
/in/sokoban.hpp:83:28: error: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Werror,-Wshorten-64-to-32]
int nc = c + dx[d];
~~ ~~^~~~~~~
7 errors generated.
/in/Compile/Makefile:16: recipe for target 'main' failed
make: *** [main] Error 1