inline the trivial int conversion functions in the code generator

PiperOrigin-RevId: 486670074
pull/13171/head
Eric Salo 2 years ago committed by Copybara-Service
parent f6307877d3
commit cb7a51938c
  1. 14
      upb/msg_internal.h
  2. 12
      upbc/protoc-gen-upb.cc

@ -51,18 +51,6 @@
extern "C" {
#endif
/** upb_*Int* conversion routines ********************************************/
UPB_INLINE int32_t _upb_Int32_FromI(int v) { return (int32_t)v; }
UPB_INLINE int64_t _upb_Int64_FromLL(long long v) { return (int64_t)v; }
UPB_INLINE uint32_t _upb_UInt32_FromU(unsigned v) { return (uint32_t)v; }
UPB_INLINE uint64_t _upb_UInt64_FromULL(unsigned long long v) {
return (uint64_t)v;
}
extern const float kUpb_FltInfinity;
extern const double kUpb_Infinity;
@ -93,7 +81,7 @@ typedef enum {
// Mask to isolate the upb_FieldMode from field.mode.
#define kUpb_FieldMode_Mask 3
/* Extra flags on the mode field. */
// Extra flags on the mode field.
typedef enum {
kUpb_LabelFlags_IsPacked = 4,
kUpb_LabelFlags_IsExtension = 8,

@ -219,17 +219,13 @@ std::string FieldDefault(const protobuf::FieldDescriptor* field) {
return absl::Substitute("upb_StringView_FromString(\"$0\")",
absl::CEscape(field->default_value_string()));
case protobuf::FieldDescriptor::CPPTYPE_INT32:
return absl::Substitute("_upb_Int32_FromI($0)",
field->default_value_int32());
return absl::Substitute("(int32_t)$0", field->default_value_int32());
case protobuf::FieldDescriptor::CPPTYPE_INT64:
return absl::Substitute("_upb_Int64_FromLL($0ll)",
field->default_value_int64());
return absl::Substitute("(int64_t)$0ll", field->default_value_int64());
case protobuf::FieldDescriptor::CPPTYPE_UINT32:
return absl::Substitute("_upb_UInt32_FromU($0u)",
field->default_value_uint32());
return absl::Substitute("(uint32_t)$0u", field->default_value_uint32());
case protobuf::FieldDescriptor::CPPTYPE_UINT64:
return absl::Substitute("_upb_UInt64_FromULL($0ull)",
field->default_value_uint64());
return absl::Substitute("(uint64_t)$0ull", field->default_value_uint64());
case protobuf::FieldDescriptor::CPPTYPE_FLOAT:
return FloatToCLiteral(field->default_value_float());
case protobuf::FieldDescriptor::CPPTYPE_DOUBLE:

Loading…
Cancel
Save