A simple and somewhat-accurate answer is "it's reserved to mean 'no field'".
It's certainly handy in your code to use 0 that way - for example:
if (uint tag = possiblyComputeSomeTagID(thing))
LOG(ERROR) << "No tag for: " << thing;
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To view this discussion on the web visit
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