From 3c547fcdf377d8caf1f9170f8b76f16306231e8b Mon Sep 17 00:00:00 2001 From: Hao Nguyen <haon@google.com> Date: Wed, 19 Dec 2018 11:25:53 -0800 Subject: [PATCH] Lower the severity of lower-case ruby enum to warning. Add conformance test for allow_alias with lower_case enums --- ruby/ext/google/protobuf_c/message.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ruby/ext/google/protobuf_c/message.c b/ruby/ext/google/protobuf_c/message.c index 2f14ef6ecf..b1d6a5e289 100644 --- a/ruby/ext/google/protobuf_c/message.c +++ b/ruby/ext/google/protobuf_c/message.c @@ -697,6 +697,11 @@ VALUE build_module_from_enumdesc(EnumDescriptor* enumdesc) { upb_enum_next(&it)) { const char* name = upb_enum_iter_name(&it); int32_t value = upb_enum_iter_number(&it); + if (name[0] < 'A' || name[0] > 'Z') { + rb_warn("Enum value '%s' does not start with an uppercase letter " + "as is required for Ruby constants.", + name); + } rb_define_const(mod, name, INT2NUM(value)); }