- 13 Dec, 2023 2 commits
-
-
PiperOrigin-RevId: 590669848 Change-Id: Ibc703b0fbedede86ddaa9682049b7dcc2250fbfb
Abseil Team committed -
These methods will only be defined if they're defined for `T`. Additionally, we add jitter to the output to discourage people relying on the output format. PiperOrigin-RevId: 590598988 Change-Id: I4e7173b5f0c66fd3a1cdd3392944e20b8a26641f
Zie Weaver committed
-
- 12 Dec, 2023 2 commits
-
-
PiperOrigin-RevId: 590337123 Change-Id: Ib98bbb5a5dadbce5e891567038e016f4da2efc0b
Abseil Team committed -
It is not used at the moment. Usage is planned to be submitted separately. Useful for faster iterating over all slots in the internal functions. PiperOrigin-RevId: 590300049 Change-Id: I081f33113268761db868771d29796d94c24e4e7a
Abseil Team committed
-
- 11 Dec, 2023 3 commits
-
-
These used to be independent implementations. Now that they are aliases, maintaining tests doesn't make sense anymore. PiperOrigin-RevId: 589947915 Change-Id: I555496e3467d56a75468b180383482eee2e8f198
Dino Radakovic committed -
Abseil does not support C++11 anymore: https://github.com/google/oss-policies-info/blob/b842c39db88e6569dfe2cf98be434b03507cb503/foundational-cxx-support-matrix.md NOTE: This is a breaking change because `std::integer_sequence<T>` requires `std::is_integral_v<T>`, but `absl::integer_sequence<T>` does not. Unit tests will be deleted in a follow-up. PiperOrigin-RevId: 589908215 Change-Id: I57a81e4451840304d5fba60bef286e81e024af9c
Dino Radakovic committed -
PiperOrigin-RevId: 589842893 Change-Id: I9657761d1f71c665582406f278c6605f6d382f6d
Dmitri Gribenko committed
-
- 07 Dec, 2023 3 commits
-
-
PiperOrigin-RevId: 588893303 Change-Id: I3f9278f2f7f0bc4b8903a87cb4a740daf7349755
Abseil Team committed -
Details: - In case the table entirely fits into a single group size (`capacity <= Group::kWidth`), the order of elements is not important. - For growing upto Group::kWidth we rotate control bytes and slots deterministically (using memcpy). - We also avoid second find_first_non_full right after resize for small growing. PiperOrigin-RevId: 588825966 Change-Id: I09bd7fd489e3868dcf56c36b436805d08dae7ab5
Abseil Team committed -
Reduces final binary size by avoiding stream I/O and all its associated overhead. PiperOrigin-RevId: 588789394 Change-Id: Ib8653db77aee0dae45e44f4ac72fe7dd87aa2eba
Abseil Team committed
-
- 06 Dec, 2023 5 commits
-
-
PiperOrigin-RevId: 588530709 Change-Id: Iee28c7693a4802f11e13728e1c28febee8c8576f
Abseil Team committed -
This works around a Clang bug, https://github.com/llvm/llvm-project/issues/25168 PiperOrigin-RevId: 588491254 Change-Id: Ia59afae4df45474d6025a2ab1ca487b381c9ee66
Abseil Team committed -
Chromium requires no global destructors. PiperOrigin-RevId: 588466793 Change-Id: Icd255d9fb37667b4f5ce4b2552b70fa53cbf6ecf
Derek Mauro committed -
absl_log.h is supposed to be a mirror of log.h that only uses ABSL_ prefixed macros. This change adds ABSL_VLOG_IS_ON to absl_vlog_is_on.h and uses it in the implementation of VLOG. VLOG_IS_ON is then only exported though vlog_is_on.h. PiperOrigin-RevId: 588435577 Change-Id: Ifa9193afa0b782194b64447f4fedfaf24b72c95a
Derek Mauro committed -
PiperOrigin-RevId: 588403935 Change-Id: I6a3af3c044b887ec65b19390d316cfb3ccdcc853
Derek Mauro committed
-
- 05 Dec, 2023 5 commits
-
-
This converts to UTF-8 regardless of locale. PiperOrigin-RevId: 588186076 Change-Id: I2c9598279b413d460e13ad65da2ba421c0b40b83
Abseil Team committed -
Roll-forward: Honor ABSL_MIN_LOG_LEVEL in CHECK_XX, CHECK_STRXX, CHECK_OK, and the QCHECK flavors of these. In particular, if ABSL_MIN_LOG_LEVEL exceeds kFatal, these should, upon failure, terminate the program without logging anything. The lack of logging should be visible to the optimizer so that it can strip string literals and stringified variable names from the object file. Making some edge cases work under Clang required rewriting NormalizeLogSeverity to help make constraints on its return value more obvious to the optimizer. PiperOrigin-RevId: 588181755 Change-Id: I95db3bae39f8dadb52a307ca3b80775db23de766
Andy Getzendanner committed -
PiperOrigin-RevId: 588121665 Change-Id: Id057772e426aefe2fe7b2f1e94fd405b97167fed
Shahriar Rouf committed -
types when they are available. This makes them interchangeable in contexts known to be compiled as C++20. This also makes `absl::` ordering types compatible with `<=>`, allowing to unconditionally use `absl::` spelling for types but conditionally use `<=>` when available. PiperOrigin-RevId: 588085408 Change-Id: I1aa5247f0e31acbb838ee76829b7a13c74b0a94f
Marcin Kowalczyk committed -
These are methods for configurable verbose logging PiperOrigin-RevId: 588059727 Change-Id: Ib3703edd2493050a5da8b30e88b21adc643b1f7f
Derek Mauro committed
-
- 04 Dec, 2023 1 commit
-
-
The corresponding `std` types were removed before C++20 was finalized: https://wg21.link/P1959R0. They are unused. The language mechanisms and recommendations changed since they were originally proposed. In particular: * An explicitly defaulted `operator==` is defined in terms of memberwise `operator==` rather than sibling `operator<=>`. * An `operator!=` can be implicitly added to an overload set in terms of `operator==` rather than `operator<=>`. * A class which has equality but not ordering defined should provide `operator==` rather than `operator<=>`. PiperOrigin-RevId: 587834267 Change-Id: I2c2513c13f3485b9edc6a345dca4a577d8e65167
Marcin Kowalczyk committed
-
- 28 Nov, 2023 2 commits
-
-
without SSE) Closes #1575 PiperOrigin-RevId: 586009018 Change-Id: Icc34c1201268303dde96bfbb067506b861754b3a
Derek Mauro committed -
PiperOrigin-RevId: 585892739 Change-Id: I30490dac5826bff2a33d9872f71154d360f9cc0d
Abseil Team committed
-
- 27 Nov, 2023 1 commit
-
-
PiperOrigin-RevId: 585691325 Change-Id: Icd18dc0294dfd1e22f9878b628d5e5898fcc8185
Abseil Team committed
-
- 22 Nov, 2023 1 commit
-
-
PiperOrigin-RevId: 584675181 Change-Id: I78c9a29055327c84f1e78b8440221439839a041c
Abseil Team committed
-
- 20 Nov, 2023 1 commit
-
-
This reduces produced binary size and can trigger even more optimizations in the future. PiperOrigin-RevId: 584136517 Change-Id: I3854833799f88f28b755ec53132925f0c3d468ab
Abseil Team committed
-
- 17 Nov, 2023 3 commits
-
-
- libc++ throws errors when filesystem is included when disabled PiperOrigin-RevId: 583474609 Change-Id: I205edc5c508f12b84244912f9acc47308a8ca540
Abseil Team committed -
This is somewhat tricky to implement because path equality is not straightforward. See https://github.com/abseil/abseil-cpp/pull/1560#issuecomment-1799983471 for discussion. This re-lands 3bd86026 with a fix for iOS 13 unavailability of std::filesystem::path. Roll-forward of 524ebb7e. Closes #655 Closes #1560 PiperOrigin-RevId: 583365100 Change-Id: Id49735c49d123e0cd6a620a2b5b5a12d94129f94
Derek Mauro committed -
PiperOrigin-RevId: 583235586 Change-Id: Ia472b8d6530fd829fed1c07558e152975d9b24ac
Abseil Team committed
-
- 16 Nov, 2023 3 commits
-
-
'path' is unavailable: introduced in iOS 13.0 PiperOrigin-RevId: 583036562 Change-Id: I5aea530d03c3317896c3c15bcf7cb5f9d8bc466a
Derek Mauro committed -
This is somewhat tricky to implement because path equality is not straightforward. See https://github.com/abseil/abseil-cpp/pull/1560#issuecomment-1799983471 for discussion. Closes #655 Closes #1560 PiperOrigin-RevId: 582863821 Change-Id: I03517a7f2003614c027c786abbfb91b6571ab662
Derek Mauro committed -
PiperOrigin-RevId: 582861689 Change-Id: Iac257539ab282e9bfdc6d90e86c8da0c0d57b9c9
Abseil Team committed
-
- 15 Nov, 2023 1 commit
-
-
absl::Symbolize does tons of tiny reads. Speed this up by switching from lseek+read to a pread, and by reading more data than requested into a buffer. A faster absl::Symbolize will be helpful in tests and when printing stack traces on /threadz etc. Results for absl::Symbolize benchmark that exercises uncached behavior of absl::Symbolize: ``` name old time/op new time/op delta BM_Symbolize 16.4ms ±12% 2.6ms ± 0% -84.06% (p=0.001 n=5+9) ``` PiperOrigin-RevId: 582687566 Change-Id: I44caf189d81867f3fd8c050a3100a4b9a8e744d7
Abseil Team committed
-
- 14 Nov, 2023 4 commits
-
-
PiperOrigin-RevId: 582455513 Change-Id: Ic78d14d6dd748420a64e7026ec7f8b967bebbf42
Abseil Team committed -
PiperOrigin-RevId: 582426024 Change-Id: Ic8650de4faff9688f4cb5529c1df9bc752878b5a
Abseil Team committed -
current behavior of decaying the array to a pointer and hashing the pointer can lead to subtle bugs. The most common potential error is passing a C-string literal. Hashing the char pointer in those cases is correct only if the string literals are guaranteed to be deduplicated, which is dangerous to rely on even if true (and the call sites in header files require deduplication across translation units). After this change, these call-sites requires wrapping the literal in absl::string_view. This is a breaking change for code doing something like absl::HashOf("string"); Instead, this should be changed to absl::HashOf(absl::string_view("string")); PiperOrigin-RevId: 582393585 Change-Id: I3810c07b5b74bf153cb62a7beedce243be5a69eeDerek Mauro committed -
PiperOrigin-RevId: 582342910 Change-Id: Iada5420867779ed352d8fb0695ff6d6044acfba2
Abseil Team committed
-
- 13 Nov, 2023 2 commits
-
-
Partial roll forward of reentrant validation with the validation itself disabled. This will make it easier to roll back and forwards in the future (if needed) without causing merge conflicts in unrelated code. PiperOrigin-RevId: 582059046 Change-Id: I66dc6527e7a0b351367b7a391c2d653fe793143f
Evan Brown committed -
PiperOrigin-RevId: 582033534 Change-Id: I9af42210f65b40ccd7f55c9a2e0c8387b69760dc
Abseil Team committed
-
- 09 Nov, 2023 1 commit
-
-
PiperOrigin-RevId: 580726428 Change-Id: I12b0f22c2084aef90bcca67536220a6bb550b57e
Aaron Jacobs committed
-