diff options
author | Abseil Team <absl-team@google.com> | 2020-06-22 10:03:06 -0700 |
---|---|---|
committer | Mark Barolak <mbar@google.com> | 2020-06-22 14:04:24 -0400 |
commit | 10cb35e459f5ecca5b2ff107635da0bfa41011b4 (patch) | |
tree | d382b5929817af05d27c0e3e23c800c84e80e892 /absl/strings | |
parent | 4ccc0fce09836a25b474f4b1453146dae2c29f4d (diff) |
Export of internal Abseil changes
--
b548087c24ae7c2c709e8040a118b5e312d18e2e by Derek Mauro <dmauro@google.com>:
Remove the static initialization of global variables used by absl::Mutex
as requested by Chromium
PiperOrigin-RevId: 317676541
--
f198f5da1e966772efa978ba019bd23576899794 by Greg Miller <jgm@google.com>:
fix: work around gcc-4.8 bug in disjunction
See https://godbolt.org/z/i7-AmM for a repro of the bug.
I realize that Abseil no longer supports gcc 4.8 officially
(https://abseil.io/docs/cpp/platforms/platforms), but Cloud C++ still supports
gcc 4.8 officially, and so it would be nice to get this simple fix in.
fixes https://github.com/abseil/abseil-cpp/issues/718
PiperOrigin-RevId: 317484459
--
ed233f646530c6c0948213b643cc6919db1bee90 by Chris Kennelly <ckennelly@google.com>:
Avoid determining the size of the duration unit at runtime.
PiperOrigin-RevId: 317376300
--
73d4011c17fcf747a990176924a7adc69d443533 by Greg Falcon <gfalcon@google.com>:
Change spelling of internal detail from `Invoke`/`InvokeT` to `invoke`/`invoke_result_t`.
This matches the spelling of the C++17 standard library names that perform the same operations.
PiperOrigin-RevId: 317311527
GitOrigin-RevId: b548087c24ae7c2c709e8040a118b5e312d18e2e
Change-Id: I131809ff0b92cfdb0d96dc94e94d9c6f751cb0ac
Diffstat (limited to 'absl/strings')
-rw-r--r-- | absl/strings/cord.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/absl/strings/cord.h b/absl/strings/cord.h index dc987454..8580d803 100644 --- a/absl/strings/cord.h +++ b/absl/strings/cord.h @@ -857,16 +857,16 @@ ExternalRepReleaserPair NewExternalWithUninitializedReleaser( struct Rank1 {}; struct Rank0 : Rank1 {}; -template <typename Releaser, typename = ::absl::base_internal::InvokeT< +template <typename Releaser, typename = ::absl::base_internal::invoke_result_t< Releaser, absl::string_view>> void InvokeReleaser(Rank0, Releaser&& releaser, absl::string_view data) { - ::absl::base_internal::Invoke(std::forward<Releaser>(releaser), data); + ::absl::base_internal::invoke(std::forward<Releaser>(releaser), data); } template <typename Releaser, - typename = ::absl::base_internal::InvokeT<Releaser>> + typename = ::absl::base_internal::invoke_result_t<Releaser>> void InvokeReleaser(Rank1, Releaser&& releaser, absl::string_view) { - ::absl::base_internal::Invoke(std::forward<Releaser>(releaser)); + ::absl::base_internal::invoke(std::forward<Releaser>(releaser)); } // Creates a new `CordRep` that owns `data` and `releaser` and returns a pointer |