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:40:1: warning: control reaches end of non-void function [-Wreturn-type]
40 | }
| ^
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 decode(int, int, int)':
decoder.cpp:38:22: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
38 | if(out[q] & (1 << h - 1)) return 1;
| ~~^~~