/in/foo.cc: In function 'void FastBI::fft(std::vector<std::complex<double> >&, bool)':
/in/foo.cc:111:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (unsigned i = 1, j = 0; i < n; i++) {
~~^~~
/in/foo.cc:113:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (; j >= bit; bit >>= 1)
~~^~~~~~
/in/foo.cc: In function 'std::vector<int> FastBI::multiply_bigint(const std::vector<int>&, const std::vector<int>&, int)':
/in/foo.cc:141:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (size_t i = 0; i < n; i++) {
~~^~~
/in/foo.cc: In member function 'FastBI::bigint& FastBI::bigint::operator+=(const FastBI::bigint&)':
/in/foo.cc:239:46: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0, carry = 0; i < other.z.size() || carry; ++i) {
~~^~~~~~~~~~~~~~~~
/in/foo.cc:240:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i == z.size())
~~^~~~~~~~~~~
/in/foo.cc:242:40: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
z[i] += carry + (i < other.z.size() ? other.z[i] : 0);
~~^~~~~~~~~~~~~~~~
/in/foo.cc: In member function 'FastBI::bigint& FastBI::bigint::operator-=(const FastBI::bigint&)':
/in/foo.cc:262:50: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0, carry = 0; i < other.z.size() || carry; ++i) {
~~^~~~~~~~~~~~~~~~
/in/foo.cc:263:44: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
z[i] -= carry + (i < other.z.size() ? other.z[i] : 0);
~~^~~~~~~~~~~~~~~~
/in/foo.cc: In member function 'FastBI::bigint& FastBI::bigint::operator*=(int)':
/in/foo.cc:289:42: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0, carry = 0; i < z.size() || carry; ++i) {
~~^~~~~~~~~~
/in/foo.cc:290:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i == z.size())
~~^~~~~~~~~~~
/in/foo.cc: In member function 'void FastBI::bigint::read(const string&)':
/in/foo.cc:466:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
while (pos < s.size() && (s[pos] == '-' || s[pos] == '+')) {
~~~~^~~~~~~~~~
/in/foo.cc: In static member function 'static std::vector<int> FastBI::bigint::convert_base(const std::vector<int>&, int, int)':
/in/foo.cc:499:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 1; i < p.size(); i++)
~~^~~~~~~~~~
/in/foo.cc: In member function 'FastBI::bigint FastBI::bigint::mul_simple(const FastBI::bigint&) const':
/in/foo.cc:535:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < z.size(); ++i)
~~^~~~~~~~~~
/in/foo.cc:537:50: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int j = 0, carry = 0; j < v.z.size() || carry; ++j) {
~~^~~~~~~~~~~~
/in/foo.cc:538:77: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
long long cur = res.z[i + j] + (long long)z[i] * (j < v.z.size() ? v.z[j] : 0) + carry;
~~^~~~~~~~~~~~
/in/foo.cc: In function 'ull highestPowerof2(ull)':
/in/foo.cc:618:15: warning: right shift count >= width of type [-Wshift-count-overflow]
x |= x >> 64;
^~