Commit 9a6b35e1 authored by Robert Edmonds's avatar Robert Edmonds

Cater to Microsoft Visual C++

Apparently MSVC doesn't support designated initializers for some reason.
parent 4ebd5cd8
...@@ -195,14 +195,9 @@ void EnumGenerator::GenerateEnumDescriptor(google::protobuf::io::Printer* printe ...@@ -195,14 +195,9 @@ void EnumGenerator::GenerateEnumDescriptor(google::protobuf::io::Printer* printe
// Sort by name and value, dropping duplicate values if they appear later. // Sort by name and value, dropping duplicate values if they appear later.
// TODO: use a c++ paradigm for this! // TODO: use a c++ paradigm for this!
std::vector<ValueIndex> value_index; std::vector<ValueIndex> value_index;
for (unsigned j = 0; j < descriptor_->value_count(); j++) { for (int j = 0; j < descriptor_->value_count(); j++) {
const google::protobuf::EnumValueDescriptor *vd = descriptor_->value(j); const google::protobuf::EnumValueDescriptor *vd = descriptor_->value(j);
value_index.push_back({ value_index.push_back({ vd->number(), (unsigned)j, 0, vd->name() });
.value = vd->number(),
.index = j,
.final_index = 0,
.name = vd->name(),
});
} }
qsort(&value_index[0], qsort(&value_index[0],
value_index.size(), value_index.size(),
......
...@@ -581,7 +581,7 @@ GenerateMessageDescriptor(google::protobuf::io::Printer* printer, bool gen_init) ...@@ -581,7 +581,7 @@ GenerateMessageDescriptor(google::protobuf::io::Printer* printer, bool gen_init)
if (!optimize_code_size) { if (!optimize_code_size) {
std::vector<NameIndex> field_indices; std::vector<NameIndex> field_indices;
for (unsigned i = 0; i < descriptor_->field_count(); i++) { for (unsigned i = 0; i < descriptor_->field_count(); i++) {
field_indices.push_back({ .index = i, .name = sorted_fields[i]->name() }); field_indices.push_back({ i, sorted_fields[i]->name() });
} }
qsort(&field_indices[0], qsort(&field_indices[0],
field_indices.size(), field_indices.size(),
......
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