It includes a bunch of other files including a lot of macros which can
reduce the namespace available for actual protobuf.
For example, create a protobuf with a member called SIGSEGV. Since
macros cannot be namespaced in C++ this results in code which cannot be
compiled.
Fix this by just directly including endian.h
This solves the following error in gcc:
explicitly defaulted function cannot be declared 'constexpr' because the implicit declaration is not 'constexpr'
* Work around `-Werror=type-limits` under gcc 10.2
This is an error when tag is greater than 128 under gcc 10.2: `if (tag < 128) return *ptr == tag;`
It's an error even though the comparison occurs in a branch of code we know won't be taken. See https://godbolt.org/z/1eaP86
This works around the problem by casting `tag` to the same type as `*ptr`.
This commit fixes some minor issues that came up when I tried to
integrate changes from Git into Google's internal codebase:
- Include stubs/strutil.h for access to Split() helper function
- Use emplace() instead of insert() so that the code still works if
we're working with a string_view instead of a string
Unfortunately there's not an easy way to annotate that the
"unexpected mode" case is unreachable (even GOOGLE_LOG(FATAL)
in a default: case doesn't do it).
* Fix a typo
* Fix lots of spelling errors
* Fix a few more spelling mistakes
* s/parsable/parseable/
* Don't touch the third party files
* Cloneable is the preferred C# term
* Copyable is the preferred C++ term
* Revert "s/parsable/parseable/"
This reverts commit 534ecf7675.
* Revert unparseable->unparsable corrections
This is done to match an internal Google change necessary to deprecate an old internal API. Nothing needs to change here, however making the change allows the internal code to continue to match the Github code, which is desirable.