diff --git a/src/idl_parser.cpp b/src/idl_parser.cpp index caeca93d25..fe2878a961 100644 --- a/src/idl_parser.cpp +++ b/src/idl_parser.cpp @@ -3172,8 +3172,10 @@ CheckedError Parser::ParseProtoFields(StructDef* struct_def, bool isextend, return Error("Protobuf has non positive number in reserved ids"); if (range) { - for (voffset_t id = from + 1; id <= attribute; id++) - struct_def->reserved_ids.push_back(id); + for (uint32_t id = static_cast(from) + 1; + id <= static_cast(attribute); id++) { + struct_def->reserved_ids.push_back(static_cast(id)); + } range = false; } else {