> Then my question is this: why to use int32 type even though uint32
> uses less bytes covering the same range?
The main reason would be if you ever plan on reading the message from
non-Java code. What you've stated is only true in Java because it has
no unsigned integral types, so protobufs have to use signed types even
when a message declares a field as unsigned. In any language that has
unsigned integral types, you would write -1 and the other side would
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To post to this group, send email to email@example.com.
To unsubscribe from this group, send email to
For more options, visit this group at