support comparison of message embed structs
closes golang/protobuf#1638
This fixes panics on comparison of message embed structs. Previously, message embed struct is treated as message. There were two problems.
- When embed message is nil, panics on proto reflection.
- When embed message is not nil but other field is different, cmp.Equal return true.
Thank you for your interest into contributing to this project.
Unfortunately this project does not accept GitHub pull requests as the source-of-truth for this project is hosted at https://go.googlesource.com/protobuf. This project page on GitHub is a mirror of that other repository.
If you would like to contribute to this project, please follow the contribution guidelines for instructions on how to send a change. If the change you'd like to make is more substantial or introduces any new features, then it should first be discussed on the issue tracker.