Record Detail

Compile Error

In file included from /in/Compile/check.cpp:7:
/in/sokoban.hpp:150:21: error: call to 'abs' is ambiguous
                    std::abs(boxes[i].col - boxes[j].col) == 1) {
                    ^~~~~~~~
/usr/include/stdlib.h:837:12: note: candidate function
extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur;
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:56:3: note: candidate function
  abs(long __i) { return __builtin_labs(__i); }
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:61:3: note: candidate function
  abs(long long __x) { return __builtin_llabs (__x); }
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:70:3: note: candidate function
  abs(double __x)
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:74:3: note: candidate function
  abs(float __x)
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:78:3: note: candidate function
  abs(long double __x)
  ^
In file included from /in/Compile/check.cpp:7:
/in/sokoban.hpp:159:21: error: call to 'abs' is ambiguous
                    std::abs(boxes[i].row - boxes[j].row) == 1) {
                    ^~~~~~~~
/usr/include/stdlib.h:837:12: note: candidate function
extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur;
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:56:3: note: candidate function
  abs(long __i) { return __builtin_labs(__i); }
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:61:3: note: candidate function
  abs(long long __x) { return __builtin_llabs (__x); }
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:70:3: note: candidate function
  abs(double __x)
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:74:3: note: candidate function
  abs(float __x)
  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_abs.h:78:3: note: candidate function
  abs(long double __x)
  ^
In file included from /in/Compile/check.cpp:7:
/in/sokoban.hpp:271:49: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
                size_t new_row = curr.row + dir.first;
                                          ~ ~~~~^~~~~
/in/sokoban.hpp:272:49: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
                size_t new_col = curr.col + dir.second;
                                          ~ ~~~~^~~~~~
/in/sokoban.hpp:280:54: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
                    size_t push_row = curr.row - dir.first;
                                               ~ ~~~~^~~~~
/in/sokoban.hpp:281:54: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
                    size_t push_col = curr.col - dir.second;
                                               ~ ~~~~^~~~~~
/in/sokoban.hpp:462:38: error: implicit conversion changes signedness: 'typename iterator_traits<__normal_iterator<Position *, vector<Position, allocator<Position> > > >::difference_type' (aka 'long') to 'size_t' (aka 'unsigned long') [-Werror,-Wsign-conversion]
                    size_t box_idx = std::distance(current.boxes.begin(), it);
                           ~~~~~~~   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/in/sokoban.hpp:463:68: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
                    size_t box_new_row = new_row + directions[dir].first;
                                                 ~ ~~~~~~~~~~~~~~~~^~~~~
/in/sokoban.hpp:464:68: error: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Werror,-Wsign-conversion]
                    size_t box_new_col = new_col + directions[dir].second;
                                                 ~ ~~~~~~~~~~~~~~~~^~~~~~
9 errors generated.
/in/Compile/Makefile:16: recipe for target 'main' failed
make: *** [main] Error 1

Information

Submit By
Type
Submission
Homework
Project3
Language
C++
Submit At
2024-11-23 15:52:00
Judged At
2024-11-23 15:52:00
Judged By
Score
0
Total Time
0ms
Peak Memory
0 Bytes