message.cpp:120:26: warning: character constant too long for its type
120 | message.cpp: In function 'void send_message(const std::vector<int>&, const std::array<int, 31>&)':
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
message.cpp:121:45: warning: character constant too long for its type
121 | message.cpp:32:21: error: could not convert 'packet' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~
message.cpp:121:59: warning: character constant too long for its type
121 | message.cpp:32:21: error: could not convert 'packet' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~
message.cpp:121:73: warning: character constant too long for its type
121 | message.cpp:32:21: error: could not convert 'packet' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~~~~~~~~~~~~~
message.cpp:121:99: warning: character constant too long for its type
121 | message.cpp:32:21: error: could not convert 'packet' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~~~~~~~~~~~
message.cpp:126:45: warning: character constant too long for its type
126 | message.cpp:45:21: error: could not convert 'packet0' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~
message.cpp:126:60: warning: character constant too long for its type
126 | message.cpp:45:21: error: could not convert 'packet0' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~
message.cpp:126:74: warning: character constant too long for its type
126 | message.cpp:45:21: error: could not convert 'packet0' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~~~~~~~~~~~~~
message.cpp:126:100: warning: character constant too long for its type
126 | message.cpp:45:21: error: could not convert 'packet0' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~~~~~~~~~~~
message.cpp:131:45: warning: character constant too long for its type
131 | message.cpp:58:21: error: could not convert 'packet1' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~
message.cpp:131:60: warning: character constant too long for its type
131 | message.cpp:58:21: error: could not convert 'packet1' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~
message.cpp:131:74: warning: character constant too long for its type
131 | message.cpp:58:21: error: could not convert 'packet1' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~~~~~~~~~~~~~
message.cpp:131:100: warning: character constant too long for its type
131 | message.cpp:58:21: error: could not convert 'packet1' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~~~~~~~~~~~~~
message.cpp:140:82: error: extended character ’ is not valid in an identifier
140 | Your send_packet takes a std::vector<bool>, but my code used std::array<int,31>. Here’s a drop-in version that uses std::vector<bool> everywhere.
| ^
message.cpp: In function 'void send_message(const std::vector<int>&, const std::array<int, 31>&)':
message.cpp:32:21: error: could not convert 'packet' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
32 | send_packet(packet);
| ^~~~~~
| |
| Packet {aka std::array<int, 31>}
message.cpp:45:21: error: could not convert 'packet0' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
45 | send_packet(packet0);
| ^~~~~~~
| |
| Packet {aka std::array<int, 31>}
message.cpp:58:21: error: could not convert 'packet1' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
58 | send_packet(packet1);
| ^~~~~~~
| |
| Packet {aka std::array<int, 31>}
message.cpp: At global scope:
message.cpp:108:1: error: 'If' does not name a type
108 | If you prefer std::vector<int> for C instead of std::array<int,31>, just change the parameter type and keep the size check (assert(C.size()==31)), everything else stays the same.
| ^~
message.cpp:121:96: error: 'to' does not name a type; did you mean 'auto'?
121 | message.cpp:32:21: error: could not convert 'packet' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~
| auto
message.cpp:123:7: error: expected unqualified-id before '|' token
123 | | ^~~~~~
| ^
message.cpp:126:1: error: 'message' does not name a type
126 | message.cpp:45:21: error: could not convert 'packet0' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~
message.cpp:126:97: error: 'to' does not name a type; did you mean 'auto'?
126 | message.cpp:45:21: error: could not convert 'packet0' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~
| auto
message.cpp:128:7: error: expected unqualified-id before '|' token
128 | | ^~~~~~~
| ^
message.cpp:131:1: error: 'message' does not name a type
131 | message.cpp:58:21: error: could not convert 'packet1' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~~~~~~
message.cpp:131:97: error: 'to' does not name a type; did you mean 'auto'?
131 | message.cpp:58:21: error: could not convert 'packet1' from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
| ^~
| auto
message.cpp:133:7: error: expected unqualified-id before '|' token
133 | | ^~~~~~~
| ^
message.cpp:139:1: error: 'ChatGPT' does not name a type
139 | ChatGPT 说:
| ^~~~~~~
message.cpp:154:6: error: redefinition of 'void send_message(const std::vector<int>&, const std::array<int, 31>&)'
154 | void send_message(const std::vector<int>& M, const std::array<int, 31>& C) {
| ^~~~~~~~~~~~
message.cpp:11:6: note: 'void send_message(const std::vector<int>&, const std::array<int, 31>&)' previously defined here
11 | void send_message(const std::vector<int>& M, const std::array<int, 31>& C) {
| ^~~~~~~~~~~~
message.cpp: In function 'void send_message(const std::vector<int>&, const std::array<int, 31>&)':
message.cpp:168:23: error: array must be initialized with a brace-enclosed initializer
168 | Packet packet(31, false); // all zeros
| ^~
message.cpp:174:20: error: no matching function for call to 'send_packet(Packet&)'
174 | send_packet(packet);
| ~~~~~~~~~~~^~~~~~~~
In file included from message.cpp:6:
message.h:5:19: note: candidate: 'std::vector<bool> send_packet(std::vector<bool>)'
5 | std::vector<bool> send_packet(std::vector<bool> A);
| ^~~~~~~~~~~
message.h:5:49: note: no known conversion for argument 1 from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
5 | std::vector<bool> send_packet(std::vector<bool> A);
| ~~~~~~~~~~~~~~~~~~^
message.cpp:152:13: note: candidate: 'void send_packet(const std::vector<bool>&)'
152 | extern void send_packet(const std::vector<bool>& packet);
| ^~~~~~~~~~~
message.cpp:152:50: note: no known conversion for argument 1 from 'Packet' {aka 'std::array<int, 31>'} to 'const std::vector<bool>&'
152 | extern void send_packet(const std::vector<bool>& packet);
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
message.cpp:179:24: error: array must be initialized with a brace-enclosed initializer
179 | Packet packet0(31, false);
| ^~
message.cpp:187:20: error: no matching function for call to 'send_packet(Packet&)'
187 | send_packet(packet0);
| ~~~~~~~~~~~^~~~~~~~~
message.h:5:19: note: candidate: 'std::vector<bool> send_packet(std::vector<bool>)'
5 | std::vector<bool> send_packet(std::vector<bool> A);
| ^~~~~~~~~~~
message.h:5:49: note: no known conversion for argument 1 from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
5 | std::vector<bool> send_packet(std::vector<bool> A);
| ~~~~~~~~~~~~~~~~~~^
message.cpp:152:13: note: candidate: 'void send_packet(const std::vector<bool>&)'
152 | extern void send_packet(const std::vector<bool>& packet);
| ^~~~~~~~~~~
message.cpp:152:50: note: no known conversion for argument 1 from 'Packet' {aka 'std::array<int, 31>'} to 'const std::vector<bool>&'
152 | extern void send_packet(const std::vector<bool>& packet);
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
message.cpp:192:24: error: array must be initialized with a brace-enclosed initializer
192 | Packet packet1(31, false);
| ^~
message.cpp:200:20: error: no matching function for call to 'send_packet(Packet&)'
200 | send_packet(packet1);
| ~~~~~~~~~~~^~~~~~~~~
message.h:5:19: note: candidate: 'std::vector<bool> send_packet(std::vector<bool>)'
5 | std::vector<bool> send_packet(std::vector<bool> A);
| ^~~~~~~~~~~
message.h:5:49: note: no known conversion for argument 1 from 'Packet' {aka 'std::array<int, 31>'} to 'std::vector<bool>'
5 | std::vector<bool> send_packet(std::vector<bool> A);
| ~~~~~~~~~~~~~~~~~~^
message.cpp:152:13: note: candidate: 'void send_packet(const std::vector<bool>&)'
152 | extern void send_packet(const std::vector<bool>& packet);
| ^~~~~~~~~~~
message.cpp:152:50: note: no known conversion for argument 1 from 'Packet' {aka 'std::array<int, 31>'} to 'const std::vector<bool>&'
152 | extern void send_packet(const std::vector<bool>& packet);
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
message.cpp: At global scope:
message.cpp:204:18: error: redefinition of 'std::vector<int> receive_message(const std::vector<std::array<int, 31> >&)'
204 | std::vector<int> receive_message(const std::vector<Packet>& R) {
| ^~~~~~~~~~~~~~~
message.cpp:62:18: note: 'std::vector<int> receive_message(const std::vector<std::array<int, 31> >&)' previously defined here
62 | std::vector<int> receive_message(const std::vector<Packet>& R) {
| ^~~~~~~~~~~~~~~