These changes hid public APIs that are deprecated in advance of protobuf editions. They will be fully removed in a future release. Any uses of them should be migrated to the future-facing feature helpers we provide on descriptor classes.
PiperOrigin-RevId: 527422059
Fix for unknown type `int32_t` in `src/google/protobuf/compiler/objectivec/text_format_decode_data.h`
Issue encountered when building with GCC 13 (MinGW-w64 on Windows 64-bit).
Error:
```
In file included from R:/winlibs-gcc13-64/protobuf-22.3/src/google/protobuf/compiler/objectivec/text_format_decode_data.cc:31:
R:/winlibs-gcc13-64/protobuf-22.3/src/google/protobuf/compiler/objectivec/text_format_decode_data.h:59:18: error: 'int32_t' has not been declared
59 | void AddString(int32_t key, const std::string& input_for_decode,
| ^~~~~~~
R:/winlibs-gcc13-64/protobuf-22.3/src/google/protobuf/compiler/objectivec/text_format_decode_data.h:68:21: error: 'int32_t' was not declared in this scope
68 | typedef std::pair<int32_t, std::string> DataEntry;
| ^~~~~~~
R:/winlibs-gcc13-64/protobuf-22.3/src/google/protobuf/compiler/objectivec/text_format_decode_data.h:40:1: note: 'int32_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?
39 | #include "google/protobuf/port_def.inc"
+++ |+#include <cstdint>
40 |
```
Closes#12554
COPYBARA_INTEGRATE_REVIEW=https://github.com/protocolbuffers/protobuf/pull/12554 from brechtsanders:patch-1 0ab04b43b6
PiperOrigin-RevId: 527667592
//java:core, //java:lite, and //java:util shouldn't have this extra dependency. For now, we just add a separate version but we will look into using the java_library in protobuf_versioned_java_library in the future.
PiperOrigin-RevId: 527643325
cd1507d14 Fix typo in pkg-config file to properly link the utf8_range libraries
3f179d134 Add pkg-config file declaring Abseil dependency of utf8_range
git-subtree-dir: third_party/utf8_range
git-subtree-split: cd1507d1479815fbcd8ff24dc05a978a62098bae
Sanitizers are picky for container start addresses to be aligned at 8 byte aligned offsets, which causes issues under 32 bit compilations as we lay out the internal layout as {arena*, elements[...]}. This change forces the minimum header size to be at least 8 bytes, adding padding as needed.
PiperOrigin-RevId: 527596133
These changes hid public APIs that are deprecated in advance of protobuf editions. They will be fully removed in a future release. Any uses of them should be migrated to the future-facing feature helpers we provide on descriptor classes.
PiperOrigin-RevId: 527422059
This way, when e.g. `Arena::CreateMessage<RepeatedPtrField<Msg>>` is called with a non-null arena, we won't end up calling the destructor of the repeated field later.
Also add some missing includes in unittest.
PiperOrigin-RevId: 527382003
These changes hid public APIs that are deprecated in advance of protobuf editions. They will be fully removed in a future release. Any uses of them should be migrated to the future-facing feature helpers we provide on descriptor classes.
PiperOrigin-RevId: 527362587
This saves 24 bytes on each `map` field when reflection is not used.
It also delays constructing a Mutex until reflection is needed. This means we do
not have to register the mutex for destruction in the arena for normal
operation.
PiperOrigin-RevId: 527051764
An extension range is either of verification state "UNVERIFIED" or "DECLARATION". If "DECLARATION", all extension fields of the range must be declared, or build error otherwise. The current default is "UNVERIFIED", but we will flip the default later.
Deprecate `is_repeated` in favor of `repeated`.
PiperOrigin-RevId: 526184056
This appears to have been already broken for enum values on MSVC, and is completely unnecessary now that we required C++14.
PiperOrigin-RevId: 526163229
This should reduce some unnecessary branching off of syntax for ManifestSchemaFactory for CODE_SIZE optimization for full using schemas.
PiperOrigin-RevId: 526039969
Motivation: we are planning to store split repeated fields in the split struct as pointers to repeated fields, which requires not accessing "$field$" directly.
We avoid using "_internal_$name$()" and "_internal_mutable_$name$()" in the implicit weak field case so that we can avoid linking in the message (as tested in implicit_weak_fields_test).
PiperOrigin-RevId: 525862155