- 19 Aug, 2024 1 commit
-
-
PiperOrigin-RevId: 664999751 Change-Id: I6f908cc1b8de8a6a11bb1e02cca761df6aae4e07
Evan Brown committed
-
- 16 Aug, 2024 1 commit
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1728 When targeting Android NDK r25 (reached EOL now, but still in some use) one gets the following error: ``` $(SOURCE_ROOT)/contrib/restricted/abseil-cpp/absl/time/time.h:1762:37: error: invalid operands to binary expression ('std::strong_ordering' and 'const std::strong_ordering') if (auto c = lhs_hi <=> rhs_hi; c != std::strong_ordering::equal) { ``` The error indicates the lack of `operator<=>` between two `std::strong_ordering` items. I believe that this should be controlled by `__cpp_lib_three_way_comparison` (_Three-way comparison (library support)_, see [this article](https://en.cppreference.com/w/cpp/feature_test)), not by `__cpp_impl_three_way_comparison` (which stands for _Three-way comparison (compiler support)_). Fixes #1725. The problem was introduced in a2766235. Merge 32e1d3d889859ef8a32bf3460349814a2203444c into 69c46839 Merging this change closes #1728 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1728 from georgthegreat:fix-time 32e1d3d889859ef8a32bf3460349814a2203444c PiperOrigin-RevId: 663723253 Change-Id: I29f7d2b562cc5ad8e11cd46b538ba69acee0f314
Yuriy Chernyshov committed
-
- 15 Aug, 2024 1 commit
-
-
PiperOrigin-RevId: 663373500 Change-Id: I6b2014f8cc4244e1599c907197cfaadb6739f72b
Evan Brown committed
-
- 14 Aug, 2024 1 commit
-
-
This fixes the behavior of ```c++ ABSL_RAW_LOG(INFO, "RAW INFO: %s%c%s", "Hello", 0, "World"); ``` which would previously truncate at the `\0`. The new behavior is consistent with `printf`. PiperOrigin-RevId: 663049889 Change-Id: I171dcb8a61b19873b88920e383f03acf7fb112d7
Abseil Team committed
-
- 13 Aug, 2024 2 commits
-
-
PiperOrigin-RevId: 662635356 Change-Id: I8b3d992147ee3affb92947135f09076c851448e3
Chris Kennelly committed -
PiperOrigin-RevId: 662586240 Change-Id: Ibee60b935da5d8135ac99b6caf00b3c035ecfd89
Abseil Team committed
-
- 12 Aug, 2024 1 commit
-
-
The motivation for renaming AssertValidCapacity() is to avoid confusion with IsValidCapacity(). PiperOrigin-RevId: 662178137 Change-Id: If4fd15725376a899c4f40afc3db9e300c8c1edc7
Evan Brown committed
-
- 08 Aug, 2024 1 commit
-
-
Add debug mode checks that element constructors/destructors don't make reentrant calls to raw_hash_set member functions. PiperOrigin-RevId: 660889825 Change-Id: I02e0e364a5215431eddeeabde66531a95aa03f22
Evan Brown committed
-
- 07 Aug, 2024 2 commits
-
-
PiperOrigin-RevId: 660539039 Change-Id: I2f3dee7c60ce2234ea81c64b23e50448681fa885
Michael Brase committed -
The GetTID() now uses the value of the current thread handle from zx_thread_self() on Fuchsia for the thread ID. This is better than the default implementation which uses pthread_self(), since that results in a 64-bit pointer being truncated into the 32-bit pid_t type. PiperOrigin-RevId: 660270084 Change-Id: I7c8b4a26cca775be62eb6f6926cb734cbb893585
Michael Brase committed
-
- 06 Aug, 2024 4 commits
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1738 Since #1707 and #1710, `-Xarch_` option groups are present as single elements in the libraries' COPTS, and a `SHELL:` prefix is added to each of them. While these addressed certain build issues, they broke the handling of `-Xarch_` option groups in pkgconfig files. Fix that by taking care of the `SHELL:` prefix in COPTS when generating pkgconfig files. The skip-next-flag mechanism is also removed as the option groups are now present as single elements. Merge fd1246acbf4052d66fef66ee195cf254bca35b6c into 08850701 Merging this change closes #1738 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1738 from ZhongRuoyu:pkgconfig-xarch-handling fd1246acbf4052d66fef66ee195cf254bca35b6c PiperOrigin-RevId: 660055129 Change-Id: I57a1a51b2eb8983d076a3d5336acef12acae4560
Ruoyu Zhong committed -
PiperOrigin-RevId: 659987892 Change-Id: I8cb64c7569abe932851ab52d68e3b44c0c008ece
Abseil Team committed -
An `operator->` that doesn't return a record type doesn't really serve a useful purpose, and it is not required by the iterator concepts. I haven't been able to find any usage in non-test code, so I'm removing it. Even though the `pointer` type alias is now not being used anywhere, I'm keeping it because otherwise some standard libraries don't accept `CharIterator` when passed to `std::string::apend()`, for example. PiperOrigin-RevId: 659832167 Change-Id: I5de183a01009bfd71c8477f2023973075be8d860
Martin Brænne committed -
This change marks Abseil's non-modifying sequence operations including absl::linear_search and absl::c_linear_search as constexpr when building with C++20. PiperOrigin-RevId: 659812405 Change-Id: I8dc2cee873f30531b2eb8fb3da12085505a43a1a
Abseil Team committed
-
- 05 Aug, 2024 2 commits
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1739 GCC 15 will no longer include <cstdint> by default, resulting in build failures in projects that do not explicitly include it. Merge faf1b03a591f06933da02976119da5743f428e4f into 9cb5e5d1 Merging this change closes #1739 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1739 from csfore:gcc-15-fix faf1b03a591f06933da02976119da5743f428e4f PiperOrigin-RevId: 659637669 Change-Id: If14cb0e3522774cb700bd5a74abffb75feb7a0f5
Christopher Fore committed -
warnings in headers". It should fall through to the "don't impose our warnings on others" case. Do this by matching on "-Wno-*" instead of "-Wno*". Fixes #1737 PiperOrigin-RevId: 659548798 Change-Id: I49d7ba7ddcd7be30f946fca90ba9be467181e854
Derek Mauro committed
-
- 01 Aug, 2024 2 commits
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1732 Fix build on NVIDIA Jetson board. Fix #1665 This patch is already used by the spark project. I'm fixing this as this break the build of Tensorflow and JAX on Jetson board. Merge 7db2d2ab9fbed1f0fabad10a6ec73533ba71bfff into 6b8ebb35 Merging this change closes #1732 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1732 from nouiz:fix_neon_on_jetson 7db2d2ab9fbed1f0fabad10a6ec73533ba71bfff PiperOrigin-RevId: 658501520 Change-Id: If502ede4efc8c877fb3fed227eca6dc7622dd181
Frédéric Bastien committed -
This updates to a version of GoogleTest that fixes https://github.com/google/googletest/issues/4581 for downstream users of rules_python PiperOrigin-RevId: 658398482 Change-Id: I4c6d431fd38d3a108e3c252eb26be9d81ff05a8e
Derek Mauro committed
-
- 30 Jul, 2024 3 commits
-
-
PiperOrigin-RevId: 657719871 Change-Id: If0f16b1d8cfae79f31427a804a5b838599154895
Abseil Team committed -
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1735 If asan is enabled with VS, the following warning is issued by the compiler: 1>C:\work\abseil-cpp\absl\debugging\leak_check.cc(46,68): error C4800: Implicit conversion from 'int' to bool. Possible information loss 1> C:\work\abseil-cpp\absl\debugging\leak_check.cc(46,68): 1> consider using explicit cast or comparison to 0 to avoid this warning Merge 9a6a677add58a9cd31b2381f6bdb5328c9b03c02 into 8cdf4821 Merging this change closes #1735 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1735 from pps83:master-int-bool-warn 9a6a677add58a9cd31b2381f6bdb5328c9b03c02 PiperOrigin-RevId: 657591557 Change-Id: I709424b5064160860186a42f854a1856465e80d0
Pavel P committed -
We already have `swap(raw_hash_set&, raw_hash_set&)` thus we may expect argument dependent lookup will use that function in following code snippet: ``` absl::flat_hash_map<...> x, y; using std::swap; swap(x, y); ``` But in practice `std::swap` will be called because `swap(raw_hash_set&, raw_hash_set&)` requires derived-to-base conversion while `std::swap` doesn't (it is a function template), thus `std::swap` is picked by compiler. To avoid this, we need a `swap` implementations which accept the exact `*_hash_*` types which is more preferred over `std::swap`. Note that this will fix issues#1571. PiperOrigin-RevId: 657419420 Change-Id: Id003b2129187ce2d4583029789ff96247d1490de
Abseil Team committed
-
- 29 Jul, 2024 2 commits
-
-
PiperOrigin-RevId: 657352849 Change-Id: I443f218b5500492948cd4c974313209907916355
Martijn Vels committed -
https://github.com/llvm/llvm-project/issues/100639 The second issue is still relevant. PiperOrigin-RevId: 657298935 Change-Id: Ifa2f1627deee3fc24e23ea78c5b01ed232813390
Abseil Team committed
-
- 26 Jul, 2024 2 commits
-
-
PiperOrigin-RevId: 656439732 Change-Id: I7f405d8075c57e634d51c11a37fbe3e317abf103
Michael Brase committed -
PiperOrigin-RevId: 656188416 Change-Id: I43d901d99f8a4688406b8aab08bc2655a065af46
Martijn Vels committed
-
- 25 Jul, 2024 5 commits
-
-
Many compiler optimizations, even some in Asan, assume that size of the object on the stack is fixed. Compiler takes into account the lifetime of the stack object, but it does not expect that size of the object can change. This assumption allow to accesses when ever object is alive. However, this assumption does not work well with custom poisoning of objects by sanitizers. `Cord` may poison parts of the object to improve a precision of the bug detection. But compiler still may load from poisoned parts of the object, assuming it's alive. So without the patch we can have `false-positive`, because compiler reordered load from poisoned local before size-check. https://github.com/llvm/llvm-project/issues/100639 Alternative is to make compiler optimization to know about possibility of local object resize, but it's not worth of effort, as it's needed only for sanitizers so far. Another minor issue fixed with this patch is `false-negative`. https://github.com/llvm/llvm-project/issues/100640 Asan drops instrumentation of memory accesses proven to be inbound of local variable. However if we if we take into account `custom poisoning` we will have to pessimize too often: any random function call can potentially `resize` a variable by `poisoning`. We are already using similar `poisoning` workaround in libc++: https://github.com/llvm/llvm-project/pull/79536/files#diff-534bc2907ddb3b074ded1353d18fd7d578daf1707943b3039bab4ed975aba3b3R772 PiperOrigin-RevId: 656129711 Change-Id: I6d78997da6d31c7ab979a00b84dc9b3b7cffc26f
Abseil Team committed -
The POSIX sigaltstack() function is not implemented on Fuchsia. PiperOrigin-RevId: 656080882 Change-Id: Ibf4892df85f299b888eb7f0016c220f49f975b96
Abseil Team committed -
PiperOrigin-RevId: 656010740 Change-Id: I99ef6f18502a0cb2c363c805ae5f9a9a42bd3b41
Martijn Vels committed -
PiperOrigin-RevId: 655958414 Change-Id: I09b3a86b009cd64e53d27b615c0ec127ed64e8e4
Sandy Zhang committed -
Update swisstable swap API comments to no longer guarantee that we don't move/swap individual elements. These comments have been wrong since the launch of swisstable SOO. PiperOrigin-RevId: 655916107 Change-Id: I18af13ccb19702266551b43251370a95f6c8bc90
Evan Brown committed
-
- 24 Jul, 2024 1 commit
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1726 ref: https://cmake.org/cmake/help/latest/prop_tgt/BUILD_WITH_INSTALL_RPATH.html Merge d7d460773fc94171aba41cd344705e9247a5eb81 into 5ea745c2 Merging this change closes #1726 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1726 from Mizux:master d7d460773fc94171aba41cd344705e9247a5eb81 PiperOrigin-RevId: 655593538 Change-Id: Iedd70d3a8b4f6256664aee26a698d4af0523d6b8
Mizux committed
-
- 23 Jul, 2024 1 commit
-
-
PiperOrigin-RevId: 655151660 Change-Id: I1aeb8eaeb3892eebcd31f28c646677dc82a267af
Abseil Team committed
-
- 22 Jul, 2024 2 commits
-
-
PiperOrigin-RevId: 654799253 Change-Id: Ide284386e864a21ab2dfae777912409bc74eebf8
Martijn Vels committed -
PiperOrigin-RevId: 654745969 Change-Id: I96b9797c0fb91cf22e5a50ef97223216683d4ec7
Derek Mauro committed
-
- 18 Jul, 2024 4 commits
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1720 Merge a72c4bcc7b45d17cf12bee62989722f16f85f0fd into 0598e582 Merging this change closes #1720 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1720 from eltociear:patch-1 a72c4bcc7b45d17cf12bee62989722f16f85f0fd PiperOrigin-RevId: 653737423 Change-Id: I5638538d1b008942feba6dc6fc98dcdbf53653ef
Ikko Eltociear Ashimine committed -
GetPageSize requires windows include regardless of presence of ASAN or MSAN PiperOrigin-RevId: 653705885 Change-Id: I4c7eec09db6c1a6168dd249cf584f1774d6cead2
Abseil Team committed -
GoogleTest version we depend on uses the public file PiperOrigin-RevId: 653606441 Change-Id: Id49b18835443162ddf9747cc31619f3acf01f4ef
Derek Mauro committed -
PiperOrigin-RevId: 653567769 Change-Id: I0448322da95558ff6a04ab1aeab2b238674b69d1
Derek Mauro committed
-
- 15 Jul, 2024 2 commits
-
-
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1699 The correct CMake policy is set, but there is no option to switch the msvc runtime when configuring the project. Since MSVC is a multiconfiguration build tool, we need to set this CMake variable internal to the project to ensure that all of the supported build configurations get properly set (i.e. `Release` builds use `/MT` or `/MD` and `Debug` builds use `/MTd` or `/MDd`). I tried to explictly set these flags (i.e. -DCMAKE_CXX_FLAGS_XXX) when configuring the project, but these flags were being overwritten due to [explicitly setting compiler flags](https://github.com/abseil/abseil-cpp/blob/master/CMake/AbseilHelpers.cmake#L285). Merge 4fbe3ae4695621c85fd328d4977e0392a614dac4 into b86d574c Merging this change closes #1699 COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1699 from aaron-bray:msvc_runtime_library 4fbe3ae4695621c85fd328d4977e0392a614dac4 PiperOrigin-RevId: 652581337 Change-Id: I64b24127cda68b681a1cd327052150508df2c4a0
Aaron Bray committed -
PiperOrigin-RevId: 652552642 Change-Id: Ic4e367531893714aa216624176a56f39a5f59144
Abseil Team committed
-