I noticed the compiler warning while running the test plan for D10725.
```
[1/23] Building C object src/secp256k1/CMakeFiles/secp256k1.dir/src/secp256k1.c.o
In file included from ../src/secp256k1/src/secp256k1.c:18:
../src/secp256k1/src/ecdsa_impl.h:312:12: warning: use of bitwise '&' with boolean operands [-Wbitwise-instead-of-logical]
return !secp256k1_scalar_is_zero(sigr) & !secp256k1_scalar_is_zero(sigs);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
&&
../src/secp256k1/src/ecdsa_impl.h:312:12: note: cast one or both operands to int to silence this warning
1 warning generated.
[2/23] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
In file included from ../src/secp256k1/src/bench_ecmult.c:17:
In file included from ../src/secp256k1/src/secp256k1.c:18:
../src/secp256k1/src/ecdsa_impl.h:312:12: warning: use of bitwise '&' with boolean operands [-Wbitwise-instead-of-logical]
return !secp256k1_scalar_is_zero(sigr) & !secp256k1_scalar_is_zero(sigs);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
&&
../src/secp256k1/src/ecdsa_impl.h:312:12: note: cast one or both operands to int to silence this warning
1 warning generated.
[3/23] Building C object src/secp256k1/CMakeFiles/internal-bench.dir/src/bench_internal.c.o
In file included from ../src/secp256k1/src/bench_internal.c:19:
In file included from ../src/secp256k1/src/secp256k1.c:18:
../src/secp256k1/src/ecdsa_impl.h:312:12: warning: use of bitwise '&' with boolean operands [-Wbitwise-instead-of-logical]
return !secp256k1_scalar_is_zero(sigr) & !secp256k1_scalar_is_zero(sigs);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
&&
../src/secp256k1/src/ecdsa_impl.h:312:12: note: cast one or both operands to int to silence this warning
1 warning generated.
[18/23] Building CXX object src/CMakeFiles/server.dir/interfaces/chain.cpp.o
../src/interfaces/chain.cpp:291:20: warning: use of bitwise '&' with boolean operands [-Wbitwise-instead-of-logical]
return FillBlock(ancestor, ancestor_out, lock) &
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/interfaces/chain.cpp:291:20: note: cast one or both operands to int to silence this warning
../src/interfaces/chain.cpp:291:20: warning: use of bitwise '&' with boolean operands [-Wbitwise-instead-of-logical]
return FillBlock(ancestor, ancestor_out, lock) &
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
&&
../src/interfaces/chain.cpp:291:20: note: cast one or both operands to int to silence this warning
2 warnings generated.
[23/23] Linking CXX executable src/qt/bitcoin-qt
```
This is a backport of [[https://github.com/bitcoin/bitcoin/pull/23573 | core#23573]] and [[https://github.com/bitcoin-core/secp256k1/pull/1009 | secp256k1#1009]]