input should be a const pointer...
diff --git a/aos/build/queues/print_field.rb b/aos/build/queues/print_field.rb
index 8e9521e..7a9fbb4 100644
--- a/aos/build/queues/print_field.rb
+++ b/aos/build/queues/print_field.rb
@@ -18,7 +18,7 @@
namespace aos {
-bool PrintField(char *output, size_t *output_bytes, void *input,
+bool PrintField(char *output, size_t *output_bytes, const void *input,
size_t *input_bytes, uint32_t type) {
switch (type) {
#{TypeNames.collect do |name|
diff --git a/aos/common/queue_types.cc b/aos/common/queue_types.cc
index a9224f6..e321b8e 100644
--- a/aos/common/queue_types.cc
+++ b/aos/common/queue_types.cc
@@ -108,10 +108,10 @@
return r.release();
}
-bool PrintMessage(char *output, size_t *output_bytes, void *input,
+bool PrintMessage(char *output, size_t *output_bytes, const void *input,
size_t *input_bytes, const MessageType &type) {
*input_bytes -= type.super_size;
- input = static_cast<char *>(input) + type.super_size;
+ input = static_cast<const char *>(input) + type.super_size;
if (*output_bytes < type.name.size() + 1) return false;
*output_bytes -= type.name.size() + 1;
@@ -153,7 +153,8 @@
// subcall put on.
output += output_bytes_before - *output_bytes - 1;
*output_bytes += 1;
- input = static_cast<char *>(input) + input_bytes_before - *input_bytes;
+ input =
+ static_cast<const char *>(input) + input_bytes_before - *input_bytes;
}
if (*output_bytes < 2) return false;
*output_bytes -= 2;
diff --git a/aos/common/queue_types.h b/aos/common/queue_types.h
index 439fc7f..55d26b4 100644
--- a/aos/common/queue_types.h
+++ b/aos/common/queue_types.h
@@ -93,12 +93,12 @@
//
// Prints the value from 1 primitive message field into output.
// The implementation of this is generated by the ruby code.
-bool PrintField(char *output, size_t *output_bytes, void *input,
+bool PrintField(char *output, size_t *output_bytes, const void *input,
size_t *input_bytes, uint32_t type)
__attribute__((warn_unused_result));
// Prints a whole message into output.
// This calls itself recursively and PrintField to print out the whole thing.
-bool PrintMessage(char *output, size_t *output_bytes, void *input,
+bool PrintMessage(char *output, size_t *output_bytes, const void *input,
size_t *input_bytes, const MessageType &type)
__attribute__((warn_unused_result));