/in/foo.cc: In function 'std::vector<int> multiply(std::vector<int>&, int)':
/in/foo.cc:11:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < a.size() || carry; ++i) {
^
/in/foo.cc:12:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i < a.size()) {
^
/in/foo.cc: In function 'void add(std::vector<int>&, std::vector<int>&)':
/in/foo.cc:24:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < a.size() || i < b.size() || carry; ++i) {
^
/in/foo.cc:24:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < a.size() || i < b.size() || carry; ++i) {
^
/in/foo.cc:25:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i < a.size()) {
^
/in/foo.cc:28:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i < b.size()) {
^
/in/foo.cc:31:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i < a.size()) {
^
/in/foo.cc: In function 'std::vector<int> binaryToDecimal(std::__cxx11::string)':
/in/foo.cc:47:34: error: invalid initialization of non-const reference of type 'std::vector<int>&' from an rvalue of type 'std::vector<int>'
add(res, vector<int>{bit});
^
/in/foo.cc:22:6: note: initializing argument 2 of 'void add(std::vector<int>&, std::vector<int>&)'
void add(vector<int>& a, vector<int>& b) {
^