Add no-op for padding variables to prevent clang compiler warning.

Change-Id: I119ee7109bfa2b0be0f468d2b2be459f45d1bb11
parent 4bc4979a
......@@ -1618,14 +1618,14 @@ class CppGenerator : public BaseGenerator {
NumToString((*id)++) + "__;";
}
static void PaddingDeclaration(int bits, std::string *code_ptr, int *id) {
static void PaddingInitializer(int bits, std::string *code_ptr, int *id) {
(void)bits;
*code_ptr += "(void)padding" + NumToString((*id)++) + "__;";
*code_ptr += ",\n padding" + NumToString((*id)++) + "__(0)";
}
static void PaddingInitializer(int bits, std::string *code_ptr, int *id) {
static void PaddingNoop(int bits, std::string *code_ptr, int *id) {
(void)bits;
*code_ptr += ",\n padding" + NumToString((*id)++) + "__(0)";
*code_ptr += " (void)padding" + NumToString((*id)++) + "__;";
}
// Generate an accessor struct with constructor for a flatbuffers struct.
......@@ -1704,20 +1704,20 @@ class CppGenerator : public BaseGenerator {
}
}
padding_id = 0;
std::string padding_list;
for (auto it = struct_def.fields.vec.begin();
it != struct_def.fields.vec.end(); ++it) {
auto field = *it;
GenPadding(*field, &padding_list, &padding_id, PaddingDeclaration);
}
code_.SetValue("ARG_LIST", arg_list);
code_.SetValue("INIT_LIST", init_list);
code_.SetValue("PADDING_LIST", padding_list);
code_ += " {{STRUCT_NAME}}({{ARG_LIST}})";
code_ += " : {{INIT_LIST}} {";
if (padding_list.length()) code_ += " {{PADDING_LIST}}";
padding_id = 0;
for (auto it = struct_def.fields.vec.begin();
it != struct_def.fields.vec.end(); ++it) {
const auto &field = **it;
if (field.padding) {
std::string padding;
GenPadding(field, &padding, &padding_id, PaddingNoop);
code_ += padding;
}
}
code_ += " }";
// Generate accessor methods of the form:
......
......@@ -200,7 +200,9 @@ MANUALLY_ALIGNED_STRUCT(16) Vec3 FLATBUFFERS_FINAL_CLASS {
padding1__(0),
test3_(_test3),
padding2__(0) {
(void)padding0__;(void)padding1__;(void)padding2__;
(void)padding0__;
(void)padding1__;
(void)padding2__;
}
float x() const {
return flatbuffers::EndianScalar(x_);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment