diff options
author | Abseil Team <absl-team@google.com> | 2022-03-15 11:12:25 -0700 |
---|---|---|
committer | Andy Getz <durandal@google.com> | 2022-03-15 20:21:30 -0400 |
commit | 231c393a170ce3c6d83e8456bc87fe917c333ecf (patch) | |
tree | b14a1ef390e86aec82c3552ba837fcd2553574b7 /absl/hash | |
parent | 5ed77665c4d697f657fa1362b5a482450f858cdc (diff) |
Export of internal Abseil changes
--
5dc885f2b62993bccf33a3f3b99f7e460c819c89 by Derek Mauro <dmauro@google.com>:
Remove the internal-only ABSL_INTERNAL_ASSUME now that ABSL_ASSUME
is available and ABSL_INTERNAL_ASSUME has no more users.
Improve the documentation to ABSL_ASSUME somewhat.
PiperOrigin-RevId: 434803125
Change-Id: I7c27418463ffc1c7e10ecd50e2d17f348f686af7
--
4aea19a0ef596228c9136a4c2446e6f25085f23c by Derek Mauro <dmauro@google.com>:
Update documentation to warn against using absl::Hash across
dynamically loaded libraries
Fixes #1128
PiperOrigin-RevId: 434723247
Change-Id: Ib0c7ba03b2cab98b42e19e85be6833192d4b4067
GitOrigin-RevId: 5dc885f2b62993bccf33a3f3b99f7e460c819c89
Diffstat (limited to 'absl/hash')
-rw-r--r-- | absl/hash/hash.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/absl/hash/hash.h b/absl/hash/hash.h index f31fde40..74e2d7c0 100644 --- a/absl/hash/hash.h +++ b/absl/hash/hash.h @@ -40,6 +40,11 @@ // each process. E.g., `absl::Hash<int>{}(9)` in one process and // `absl::Hash<int>{}(9)` in another process are likely to differ. // +// `absl::Hash` may also produce different values from different dynamically +// loaded libraries. For this reason, `absl::Hash` values must never cross +// boundries in dynamically loaded libraries (including when used in types like +// hash containers.) +// // `absl::Hash` is intended to strongly mix input bits with a target of passing // an [Avalanche Test](https://en.wikipedia.org/wiki/Avalanche_effect). // |