- 30 Jan, 2024 1 commit
-
-
Also updated the return value to reference to clarify non-nullability. PiperOrigin-RevId: 602730828 Change-Id: Ia36f7fde3cc87ac597ba4f194eebe9ebb90a1a09
Abseil Team committed
-
- 29 Jan, 2024 3 commits
-
-
When bzlmod is enabled and WORKSPACE.bzlmod exists, the content of WORKSPACE is ignored. This prevents bzlmod builds from unintentionally depending on the WORKSPACE file. This exposed some small problems with our clang-cl configuration, which are also fixed in this change. PiperOrigin-RevId: 602511311 Change-Id: I0ba411edde2df0e17f4eeede4117ddb6934dd8f8
Derek Mauro committed -
PiperOrigin-RevId: 602485199 Change-Id: I5cc10eb8dcfe5988cf939080a224522e02ad8607
Abseil Team committed -
AbslHash allows for piecewise chunks to be streamed incrementally into hash states and requires them to hash identically to one giant stream. The exact size window for this is an internal details `PiecewiseChunkSize`. There was an off by one error in this code. Add tests and fix it. PiperOrigin-RevId: 602463183 Change-Id: I159bbb5e7e745f55b2fe6eaf0d2735bd0a08aca9
Matt Kulukundis committed
-
- 25 Jan, 2024 1 commit
-
-
PiperOrigin-RevId: 601477629 Change-Id: I3b683d94192b04f233ce5ec636586ccb90d24602
Dmitri Gribenko committed
-
- 24 Jan, 2024 1 commit
-
-
PiperOrigin-RevId: 601156448 Change-Id: Id6d19bda7eb3acee11cfab3a95e611996d6ef4cc
Abseil Team committed
-
- 23 Jan, 2024 1 commit
-
-
Terminate the stack trace if it isn't. PiperOrigin-RevId: 600839499 Change-Id: I5692fa6cb52c4c8061b4ac14d8fba70f7fbabc52
Abseil Team committed
-
- 22 Jan, 2024 3 commits
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1604 Looks like abseil is not using any of the APIs listed in https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api?language=objc, so adding an empty manifest file. fixes #1602 Merge 79da4bd7b54949d5e01c04623842ea1d0d4fbe59 into f7d2b13e Merging this change closes #1604 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1604 from HannahShiSFB:privacy-manifests 79da4bd7b54949d5e01c04623842ea1d0d4fbe59 PiperOrigin-RevId: 600525731 Change-Id: I3fbc6dcc6e47032665a9fa72c000ae245a25dd52
Hannah Shi committed -
The minimum supported version today is GCC 7 (`__GNUC__ >= 7`). PiperOrigin-RevId: 600475215 Change-Id: I1aa46384f1e75f268649a48dbe2b42f3475bb07f
Abseil Team committed -
Since compiler support for this attribute differs, if for example system libraries compiled with GCC are mixed with libraries compiled with Clang, types will have different ideas about their ABI. PiperOrigin-RevId: 600467146 Change-Id: I5729e54d34176d019a2dee9afc36ed9da1da10fa
Derek Mauro committed
-
- 19 Jan, 2024 2 commits
-
-
This was not intended to be supported, and it has resulted in calls as `absl::StrCat({...})`, which are not supported and only work coincidentally for the first 4 arguments due to `absl::StrCat` having overloads that take `absl::AlphaNum` directly for those. The existing situation prevents modifying the implementations of such functions to alternatives that do not have such overloads for those arguments. PiperOrigin-RevId: 599872755 Change-Id: I02c90119b2b96a922cf7e3b5d5f02affe24a272dAbseil Team committed -
The current support policy is `_MSC_VER >= 1920`. PiperOrigin-RevId: 599833619 Change-Id: I9cf7393a5b659d1680765e37e0328539ccb870fa
Abseil Team committed
-
- 18 Jan, 2024 2 commits
-
-
PiperOrigin-RevId: 599538858 Change-Id: I9e92f4c9cfef1bfe6f8f925efe0ede3f309b6bf4
Abseil Team committed -
Note that this only changes how we allocate the empty state, and reference countings of `empty` stay the same. PiperOrigin-RevId: 599526339 Change-Id: I2c6aaf875c144c947e17fe8f69692b1195b55dd7
Abseil Team committed
-
- 17 Jan, 2024 1 commit
-
-
Add protected copy ctor+assign to absl::LogSink, and clarify thread-safety requirements to apply to the interface methods. PiperOrigin-RevId: 599266310 Change-Id: I3b5a91eb17b4b09feba5e048892875f3a747afb1
Andy Getzendanner committed
-
- 16 Jan, 2024 1 commit
-
-
the lack of a feature equivalent to Bazel's alwayslink=True PiperOrigin-RevId: 598855446 Change-Id: I0bb3bc40005908106eb7a7252572e3af153a7f5c
Derek Mauro committed
-
- 13 Jan, 2024 1 commit
-
-
For consistency, all global logging configurations lives in //absl/log/globals.h PiperOrigin-RevId: 598194040 Change-Id: I815b7d07f8fe06c70cef83bdf825c2f7ca504a2b
Derek Mauro committed
-
- 12 Jan, 2024 1 commit
-
-
Speed up `raw_hash_map::[]` with ABSL hardening enabled by unchecking dereference of iterator returned by `try_emplace`. PiperOrigin-RevId: 597920257 Change-Id: I1b2e8f10a2f1efa763a6f0760294beafdb6fd9c0
Abseil Team committed
-
- 11 Jan, 2024 3 commits
-
-
https://bazel.build/external/overview#bzlmod Bzlmod will be the default in a future Bazel release. By default it requires projects to be registered with the Bazel Central Registry (https://registry.bazel.build/) and thus uses regular releases by default. Users that want to "live-at-head" can still do this through with overrides (https://bazel.build/external/module#overrides). This change updates Abseil dependencies to use released versions. CI uses Bzlmod except in the case of linux_gcc-floor, which will keep testing the old WORKSPACE-based dependency system. PiperOrigin-RevId: 597676666 Change-Id: I8d33facc432477c6dc7daa06fd00bb4ae8c4adba
Derek Mauro committed -
Enable ABSL_BTREE_ENABLE_GENERATIONS and ABSL_SWISSTABLE_ENABLE_GENERATIONS with ABSL_HAVE_HWADDRESS_SANITIZER. It will detect bugs similar to Asan. Also updated related tests to pass with HWASAN. They are still flaky because of nature of HWASAN algorithm, but test can be update to avoid flakiness, which I will do in followup patches. PiperOrigin-RevId: 597613798 Change-Id: Ic8af36a268ca041c002eb561b946aa2d9b93996a
Abseil Team committed -
Some compilers warn if a switch block that already covers all enumeration values also has a default label. PiperOrigin-RevId: 597583941 Change-Id: Ib3eb08dca0a19105522c61e47944cfc75280c15e
Daniel Cheng committed
-
- 10 Jan, 2024 3 commits
-
-
PiperOrigin-RevId: 597297788 Change-Id: Idb4cd3f62a03204bcad423d9934963136c018996
Abseil Team committed -
f845e60a added an option to use C++20's <ordering> header but the CMake install configured this as an alias in C++17 when it is not available. Fixes #1597 PiperOrigin-RevId: 597258569 Change-Id: I40277d55702601e1686370bee6af9b7491fd2000
Derek Mauro committed -
releasing Abseil and GoogleTest. GoogleTest referenced this internal file and this internal trait. Since simultaneous releases are not possible since once release must reference another, we will temporarily add this back. https://github.com/google/googletest/blob/v1.14.x/googletest/include/gtest/gtest-printers.h#L119 https://github.com/google/googletest/pull/4368#issuecomment-1717699895 https://github.com/google/googletest/pull/4368#issuecomment-1717699895 PiperOrigin-RevId: 597073935 Change-Id: I7c2697a212dc477fd25770777445c64cfee73745
Derek Mauro committed
-
- 09 Jan, 2024 1 commit
-
-
This changes the way in which clang-cl is selected on Windows as it has changed: https://bazel.build/configure/windows#clang --features=external_include_paths has been removed from Windows builds since it appears cause build command errors currently PiperOrigin-RevId: 596965732 Change-Id: I95b636a9a4fdcc4172c3bb8c6cb28d5f7db592c9
Derek Mauro committed
-
- 05 Jan, 2024 1 commit
-
-
This follows Benford's law, which is likely also a much more accurate representation of real data than a constant. We also add benchmarks for different integer types. PiperOrigin-RevId: 596039508 Change-Id: I4862c7cfdbf5face18ae31cf0bd2fd54e47684b7
Abseil Team committed
-
- 04 Jan, 2024 2 commits
-
-
The updated code is designed to: - Be branch-predictor-friendly - Be cache-friendly - Minimize the lengths of critical paths - Minimize slow operations (particularly multiplications) - Minimize binary/codegen bloat The most notable performance trick here is perhaps the precomputation & caching of the number of digits, so that we can reuse/exploit it when writing the output. This precomputation of the exact length enables 2 further performance benefits: - It makes `StrCat` and `StrAppend` zero-copy when only integers are passed, by avoiding intermediate `AlphaNum` entirely in those cases. If needed in the future, we can probably also make many other mixtures of non-integer types zero-copy as well. - It avoids over-reservation of the string buffer, allowing for more strings to fit inside SSO, which will likely have further performance benefits. There is also a side benefit of preventing `FastIntToBuffer` from writing beyond the end of the buffer, which has caused buffer overflows in the past. The new code continues to use & extend some of the existing core tricks (such as the division-by-100 trick), as those are already efficient. PiperOrigin-RevId: 595785531 Change-Id: Id6920e7e038fec10b2c45f213de75dc7e2cbddd1
Abseil Team committed -
Neither GCC nor Clang's __builtin_nan(), nor glibc's nan(), accept null pointers. PiperOrigin-RevId: 595767225 Change-Id: I4cddd1cafd0c9e83a823ec68386f10ce077c6b4c
Abseil Team committed
-
- 03 Jan, 2024 2 commits
-
-
https://github.com/abseil/abseil-cpp/issues/1465 reports that some CMake builds on Apply platforms issue ``` warning: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: libabsl_bad_any_cast_impl.a the table of contents is empty (no object file members in the library define global symbols) ``` Our CMake build handles this problem for header-only libraries by not building a library at all. For some libraries, for example our polyfills, the library is only conditionally empty. In these libraries, I added a single char variable on Apple platforms as a workaround. I have been able to reproduce the warnings reported in https://github.com/abseil/abseil-cpp/issues/1465, but they don't fail the build for me. I don't see them any more after this change. PiperOrigin-RevId: 595480705 Change-Id: Ie48637e84ebae2f2aea4e2de83b146f30f6a76b9
Derek Mauro committed -
Speed up `raw_hash_set::contains()` when ABSL hardening is enabled by removing the iterator invalidation check from the comparison that contains performs. PiperOrigin-RevId: 595460301 Change-Id: I9a5d6c81385e38184f4848c58209adc5d32bb7be
Abseil Team committed
-
- 02 Jan, 2024 3 commits
-
-
constexpr Flag construction. These versions of MSVC are no longer supported. PiperOrigin-RevId: 595195773 Change-Id: Iaf2f01a2255fb24f3aadc26f09600543fffa9da5
Derek Mauro committed -
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1589 It makes sense because even if it fails spuriously, we can just try again since we have to check for other readers anyway. Merge 0b1780299b9e43205202d6b25f6e57759722d063 into 6a19ff47 Merging this change closes #1589 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1589 from AtariDreams:atomics 0b1780299b9e43205202d6b25f6e57759722d063 PiperOrigin-RevId: 595149382 Change-Id: I24f678f6bf95c6a37b2ed541a2b6668a58a67702
AtariDreams committed -
PiperOrigin-RevId: 595114487 Change-Id: Ia8fc94e4feaf8da1185e7e93ba4250e61e690cfd
Derek Mauro committed
-
- 28 Dec, 2023 2 commits
-
-
* Also does this for `absl::internal::identity_t` which is now `absl::internal::type_identity_t` * This is clearer naming as this is a backfill of `std::type_identity` (the identity type), and not `std::identity` (the identity function) PiperOrigin-RevId: 594316002 Change-Id: I5fb8cf7e3d07c1bc736cbecd202e7d556b6ea33e
Lawrence Wolf-Sonkin committed -
Add compile-checks to ensure the parameter to absl::numbers_internal::FastIntToBuffer isn't provably insufficient This performance-sensitive API is internal, and should not be used directly. Nevertheless, some do use it, so it's worth trying to block incorrect uses where we can. PiperOrigin-RevId: 594289730 Change-Id: Ib5df39b450ef2ceda795082cde10ec2ba2642172
Abseil Team committed
-
- 27 Dec, 2023 2 commits
-
-
PiperOrigin-RevId: 593918110 Change-Id: Ide100c69b10e28011af17c7f82bb10eea072cad4
Abseil Team committed -
PiperOrigin-RevId: 593889663 Change-Id: I589cd18922172d8aca99ddcc0d6f08a013bed9b4
Abseil Team committed
-
- 26 Dec, 2023 2 commits
-
-
PiperOrigin-RevId: 593814844 Change-Id: If1967814b2b9273061b928bfee102faae1fad263
Abseil Team committed -
PiperOrigin-RevId: 593780380 Change-Id: Id80217c63dd76bafbcfb79a7ee10807f1b771cb2
Dmitri Gribenko committed
-
- 21 Dec, 2023 1 commit
-
-
PiperOrigin-RevId: 592918704 Change-Id: Iacef0e069c012a04960211c032454244822f9634
Andy Getzendanner committed
-