In file included from /in/Compile/check.cpp:7:
/in/sokoban.hpp:44:17: error: implicit conversion changes signedness: 'unsigned long' to 'int' [-Werror,-Wsign-conversion]
int x = pos / cols, y = pos % cols;
~ ~~~~^~~~~~
/in/sokoban.hpp:44:13: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
int x = pos / cols, y = pos % cols;
^~~ ~
/in/sokoban.hpp:44:33: error: implicit conversion changes signedness: 'unsigned long' to 'int' [-Werror,-Wsign-conversion]
int x = pos / cols, y = pos % cols;
~ ~~~~^~~~~~
/in/sokoban.hpp:44:29: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
int x = pos / cols, y = pos % cols;
^~~ ~
/in/sokoban.hpp:45:62: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool top_wall = std::find(walls.begin(), walls.end(), (x - 1) * cols + y) != walls.end();
~~^~~ ~
/in/sokoban.hpp:45:76: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool top_wall = std::find(walls.begin(), walls.end(), (x - 1) * cols + y) != walls.end();
~ ^
/in/sokoban.hpp:46:65: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool bottom_wall = std::find(walls.begin(), walls.end(), (x + 1) * cols + y) != walls.end();
~~^~~ ~
/in/sokoban.hpp:46:79: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool bottom_wall = std::find(walls.begin(), walls.end(), (x + 1) * cols + y) != walls.end();
~ ^
/in/sokoban.hpp:47:60: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool left_wall = std::find(walls.begin(), walls.end(), x * cols + (y - 1)) != walls.end();
^ ~
/in/sokoban.hpp:47:74: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool left_wall = std::find(walls.begin(), walls.end(), x * cols + (y - 1)) != walls.end();
~ ~~^~~
/in/sokoban.hpp:48:61: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool right_wall = std::find(walls.begin(), walls.end(), x * cols + (y + 1)) != walls.end();
^ ~
/in/sokoban.hpp:48:75: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
bool right_wall = std::find(walls.begin(), walls.end(), x * cols + (y + 1)) != walls.end();
~ ~~^~~
/in/sokoban.hpp:43:33: error: unused parameter 'rows' [-Werror,-Wunused-parameter]
bool is_deadend(int pos, size_t rows, size_t cols, const std::vector<int> &walls, const std::vector<int> &targets) {
^
/in/sokoban.hpp:118:40: error: implicit conversion changes signedness: 'unsigned long' to 'int' [-Werror,-Wsign-conversion]
int nx = player_pos / cols + dx[d];
~~ ~~~~~~~~~~~~~~~~~~^~~~~~~
/in/sokoban.hpp:118:22: error: implicit conversion changes signedness: 'std::tuple_element<0, std::tuple<int, std::vector<int, std::allocator<int> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::type' (aka 'int') to 'unsigned long' [-Werror,-Wsign-conversion]
int nx = player_pos / cols + dx[d];
^~~~~~~~~~ ~
/in/sokoban.hpp:118:42: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
int nx = player_pos / cols + dx[d];
~ ^~~~~
/in/sokoban.hpp:119:40: error: implicit conversion changes signedness: 'unsigned long' to 'int' [-Werror,-Wsign-conversion]
int ny = player_pos % cols + dy[d];
~~ ~~~~~~~~~~~~~~~~~~^~~~~~~
/in/sokoban.hpp:119:22: error: implicit conversion changes signedness: 'std::tuple_element<0, std::tuple<int, std::vector<int, std::allocator<int> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::type' (aka 'int') to 'unsigned long' [-Werror,-Wsign-conversion]
int ny = player_pos % cols + dy[d];
^~~~~~~~~~ ~
/in/sokoban.hpp:119:42: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
int ny = player_pos % cols + dy[d];
~ ^~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
/in/Compile/Makefile:16: recipe for target 'main' failed
make: *** [main] Error 1