encoder.cpp: In function 'void shuffle(int, int, int)':
encoder.cpp:18:17: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
18 | if(out.size() > m)
| ~~~~~~~~~~~^~~
encoder.cpp: In function 'int encode(int, int, int)':
encoder.cpp:41:1: warning: control reaches end of non-void function [-Wreturn-type]
41 | }
| ^
decoder.cpp: In function 'void shuffle(int, int, int)':
decoder.cpp:18:17: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
18 | if(out.size() > m)
| ~~~~~~~~~~~^~~
decoder.cpp: In function 'int encode(int, int, int)':
decoder.cpp:38:22: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
38 | if(out[q] & (1 << h - 1)) return 1;
| ~~^~~
/usr/bin/ld: /tmp/cc9UUmm6.o: in function `main':
grader_decode.c:(.text.startup+0x22f): undefined reference to `decode(int, int, int)'
collect2: error: ld returned 1 exit status