In file included from /in/Compile/check.cpp:7:
/in/sokoban.hpp:41:47: error: implicit conversion changes signedness: 'int' to 'size_t' (aka 'unsigned long') [-Werror,-Wsign-conversion]
size_t hash = state.player.first * 31 + state.player.second;
~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/in/sokoban.hpp:43:32: error: implicit conversion changes signedness: 'int' to 'unsigned long' [-Werror,-Wsign-conversion]
hash = hash * 31 + box_pos;
~ ^~~~~~~
/in/sokoban.hpp:104:22: error: implicit conversion changes signedness: 'int' to 'std::vector::size_type' (aka 'unsigned long') [-Werror,-Wsign-conversion]
if (map.grid[row][col] == '#' || state.box_positions.count(box) > 1) {
~~~ ^~~
/in/sokoban.hpp:104:27: 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 (map.grid[row][col] == '#' || state.box_positions.count(box) > 1) {
~~~ ^~~
/in/sokoban.hpp:103:34: error: implicit conversion loses integer precision: 'const size_t' (aka 'const unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
decode_position(box, map.cols, row, col);
~~~~~~~~~~~~~~~ ~~~~^~~~
/in/sokoban.hpp:116:22: error: implicit conversion changes signedness: 'int' to 'std::vector::size_type' (aka 'unsigned long') [-Werror,-Wsign-conversion]
if (map.grid[row][col] != 'T') {
~~~ ^~~
/in/sokoban.hpp:116:27: 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 (map.grid[row][col] != 'T') {
~~~ ^~~
/in/sokoban.hpp:115:34: error: implicit conversion loses integer precision: 'const size_t' (aka 'const unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
decode_position(box, map.cols, row, col);
~~~~~~~~~~~~~~~ ~~~~^~~~
/in/sokoban.hpp:128:34: error: implicit conversion loses integer precision: 'const size_t' (aka 'const unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
decode_position(box, map.cols, row, col);
~~~~~~~~~~~~~~~ ~~~~^~~~
/in/sokoban.hpp:151:79: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
start.box_positions.insert(encode_position(box.first, box.second, map.cols));
~~~~~~~~~~~~~~~ ~~~~^~~~
/in/sokoban.hpp:186:42: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
decode_position(box, map.cols, box_row, box_col);
~~~~~~~~~~~~~~~ ~~~~^~~~
/in/sokoban.hpp:192:85: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
next.box_positions.insert(encode_position(box_row, box_col, map.cols));
~~~~~~~~~~~~~~~ ~~~~^~~~
12 errors generated.
/in/Compile/Makefile:16: recipe for target 'main' failed
make: *** [main] Error 1