--
77c85460dc3c46593b231c5161ac55273bb0c7ef by Abseil Team <absl-team@google.com>:
Support int128 in SimpleAtoi.
PiperOrigin-RevId: 337946262
--
0be53049ccf8309650e4e22f23b290e5f75ee828 by Gennadiy Rozental <rogeeff@google.com>:
Update build scripts to use --mount instead of --volume to mount the host data into a container.
This is somewhat more verbose, but more readable and flexible. More importantly this is what docker documentation is recomending to use now.
PiperOrigin-RevId: 337898761
--
3bc877f1679fdf61ecbf4365287a0403cfc9b53e by Samuel Benzaquen <sbenza@google.com>:
Add Cord constructor for constinit instances.
PiperOrigin-RevId: 337871148
--
8b87701892b9c325e78ad4e8e4f16b785a744622 by Chris Kennelly <ckennelly@google.com>:
Use the address of kSeed, rather than its value.
We initialize kSeed with &kSeed, so these are equivalent, but kSeed requires a
load from memory while &kSeed can be formed as a RIP-relative lea.
PiperOrigin-RevId: 337868415
GitOrigin-RevId: 77c85460dc3c46593b231c5161ac55273bb0c7ef
Change-Id: I3d06c18a123f1be29dad5801e8625952dc41cd95
--
498800727a35cd00c199e653c2a8e34dc3322b54 by Derek Mauro <dmauro@google.com>:
Fixes CMake dependency issues and adds `-Wl,--no-undefined` to avoid
these issues in the future.
Fixes#817
PiperOrigin-RevId: 337615527
--
a14b214a50a095d0c10c9d7a9e98ab1bd3b3976b by Samuel Benzaquen <sbenza@google.com>:
Minor compatibility fix for a version of gcc 5.5
PiperOrigin-RevId: 337561733
--
89a65c211e626bd30c046f79d0df9cc4a7d7c792 by Gennadiy Rozental <rogeeff@google.com>:
Internal change
PiperOrigin-RevId: 337436891
--
d30c05c850ead352dad5ea0dc32942feb2942986 by Abseil Team <absl-team@google.com>:
Place STL exception functions underneath the ABSL_HAVE_EXCEPTIONS #ifdef.
The STL exception functions are not present in the Android NDK, so Abseil fails to build as part of ANGLE in AOSP. This CL places the various STL exception throwing functions inside #ifdef ABSL_HAVE_EXCEPTIONS blocks so they are removed during Android builds since neither ANGLE nor the NDK support exceptions by default.
PiperOrigin-RevId: 337142938
GitOrigin-RevId: 498800727a35cd00c199e653c2a8e34dc3322b54
Change-Id: I17b02daaea145d1a8fdbfd098f0fa99e65c86d2d
--
a5af5874c1c5cc02bd2a748d455321f82b6f2a93 by Andy Getzendanner <durandal@google.com>:
fix compile fails with asan and -Wredundant-decls
Import of https://github.com/abseil/abseil-cpp/pull/801
PiperOrigin-RevId: 336693223
--
ed9df42ab2b742386c6692c2bed015374c919d9c by Derek Mauro <dmauro@google.com>:
Fix integer conversion warning
Fixes#814
PiperOrigin-RevId: 336651814
--
0ab4c23884e72dce17b67c1eb520f9dbb802565d by Derek Mauro <dmauro@google.com>:
Internal change
PiperOrigin-RevId: 336585378
--
eba0e3dccd52a6e91bcff84075bef0affc650b74 by Matt Kulukundis <kfm@google.com>:
Add bitset operations to Futex helper.
PiperOrigin-RevId: 336409368
--
8b0709a8b4500bf5f0af4b602d76a298d81645e8 by Abseil Team <absl-team@google.com>:
Fix code indentation in a comment.
PiperOrigin-RevId: 336368167
--
bc3961c87a7e7760c10319a5b0349c279f7ae3ad by Samuel Benzaquen <sbenza@google.com>:
Improve performance of the registry:
- Reduce contention
- Reduce memory usage for each flag by `6*sizeof(void*)`.
- Replace one immortal allocation per-flag with a single one for all the flags
- Slightly improve single-threaded performance by avoiding the std::map indirections.
PiperOrigin-RevId: 336365904
--
264ad9f28f935aad8b6b1437f8bf804fa9104346 by Abseil Team <absl-team@google.com>:
Fix typo in comment on absl::Condition.
PiperOrigin-RevId: 336311680
--
b5b808a8c75ca0df7b09eff9a423ec171d80f771 by Derek Mauro <dmauro@google.com>:
Add missing Apache license headers
PiperOrigin-RevId: 336294980
--
89446c3a4793df8b95060385cf3e219357c3db1d by Andy Soffer <asoffer@google.com>:
Internal changes
PiperOrigin-RevId: 336287465
--
57c8be4e294881bc79a6a44b8e4bf7ecbb19b9b9 by Matt Kulukundis <kfm@google.com>:
Extract Futex from an implementation detail of Wait to a private interface.
PiperOrigin-RevId: 336123209
GitOrigin-RevId: a5af5874c1c5cc02bd2a748d455321f82b6f2a93
Change-Id: Ie5a0ebe28e571814e3e11d4c05ca308523ccf311
--
f50d25c8f8491ef7031cbbcad78edd15f98c2bd1 by Abseil Team <absl-team@google.com>:
Add myriad2 to HAVE_MMAP
Remove mutex_nonprod and associated defines.
PiperOrigin-RevId: 333759830
--
25ef4c577ea983aa3fcd6cfe2af6cdc62a06f520 by Samuel Benzaquen <sbenza@google.com>:
Internal refactor.
Represent the data with a union to allow for better constexpr support in the future.
PiperOrigin-RevId: 333756733
GitOrigin-RevId: f50d25c8f8491ef7031cbbcad78edd15f98c2bd1
Change-Id: Ieecd2c47cb20de638726eb3f9fc2e5682d05dcca
--
1d4582ea8b9f38bef580d1998ebeb56adca7d3fb by Abseil Team <absl-team@google.com>:
Used StorageT alias to unify getters of CompressedTuple
PiperOrigin-RevId: 333572002
--
a630f1ef375a621dd89e6908cc6980ba81448331 by Derek Mauro <dmauro@google.com>:
Silence -Wrange-loop-analysis warnings
These warnings are likely incorrect for small POD objects, and clang
fixed this with https://reviews.llvm.org/D72212, but Xcode 12 enabled
this buggy warning by default. This fixes this problem for these users.
As a reminder, [we still recommend passing string_view by value for
function parameters](https://abseil.io/tips/1) as it generates less
code.
Fixes#787
PiperOrigin-RevId: 333536667
GitOrigin-RevId: 1d4582ea8b9f38bef580d1998ebeb56adca7d3fb
Change-Id: Ib17aa296f48f3f0fda566460a302979f5adf4195
--
587e6db882749fa7faa12815e614afab04d218b9 by Derek Mauro <dmauro@google.com>:
Use attribute detection for other sanitizer related attributes
PiperOrigin-RevId: 324077073
--
3ee55e4935b4235516b1fcac3c55945e510f7afc by Evan Brown <ezb@google.com>:
Simplify CordRepExternal allocation/deallocation.
I think this can save some memory when `Releaser` is empty and when on platforms where alignof(CordRepExternal) < (default `::operator new` alignment).
We no longer need the API requirement that alignof(Releaser) <= (default `::operator new` alignment).
Also remove another static_assert from a TODO in cord_internal.h and fix some warnings about calling std::move on a forwarding reference.
PiperOrigin-RevId: 324053720
--
9fc78436565eb3b204d4aa425ee3773354392f45 by Derek Mauro <dmauro@google.com>:
Use auto-detected sanitizer attributes for ASAN, MSAN, and TSAN builds
PiperOrigin-RevId: 323831461
GitOrigin-RevId: 587e6db882749fa7faa12815e614afab04d218b9
Change-Id: Ie0e4a2846d7f66988a2d81a5e50721b62fdb3d6d
--
69b3ab092ee0fef3d27f589e709280c341f006c6 by Greg Falcon <gfalcon@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 321005878
--
3a4038cd0cea6455453a7ae82f2de7e91d7e2bc1 by Abseil Team <absl-team@google.com>:
Google-internal changes only.
PiperOrigin-RevId: 320994821
--
f9d9a93782924df6ffc351a271c239ca4bdff3c8 by Derek Mauro <dmauro@google.com>:
Update Linux latest toolchains, most notably to GCC 10.1
This create a new "hybrid" docker image that includes the latest
versions of both GCC and LLVM. Since the LLVM build targets Debian 10,
but Debian 10 uses an older version of libstdc++ that doesn't have
full C++20 support, the easiest solution is to use the GCC/Debian 10
base image from DockerHub and copy LLVM into it.
This also includes fixes to get the build working with the
new toolchains.
PiperOrigin-RevId: 320991795
--
43129cd66dc4439b36d85030800a3929f20d9f86 by Abseil Team <absl-team@google.com>:
Rollback import of CCTZ from GitHub (breaks MSAN tests)
- e87b391f0d10ae9c3d2e70e4a3633337d2c5e643 handle "slim" TZif files in TimeZoneInfo::ExtendTransitio... by Bradley White <14679271+devbww@users.noreply.github.com>
PiperOrigin-RevId: 320978767
--
2a343a55f297d433c1521920f0bd20ddd2dc71e8 by Derek Mauro <dmauro@google.com>:
Use ABSL_HAVE_ATTRIBUTE in thread_annotations.h
PiperOrigin-RevId: 320956378
--
f6f3e8333c9ef6e6441586be6587bbfb1c8c8127 by Gennadiy Rozental <rogeeff@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 320952592
--
3cc2bcce3533ac1233c0536232b07eea45fe8ed0 by Derek Mauro <dmauro@google.com>:
Internal change
PiperOrigin-RevId: 320862698
--
4e22066476744609e42c475b55e3cbd874f04c39 by Gennadiy Rozental <rogeeff@google.com>:
Internal change
PiperOrigin-RevId: 320461277
GitOrigin-RevId: 69b3ab092ee0fef3d27f589e709280c341f006c6
Change-Id: I36f547711e7078d52f2e0a1ff3f4c903056a2b9e
--
510cd0bc2ff9cf21e1e960264d179fa333a88612 by Derek Mauro <dmauro@google.com>:
Removes the static initializer for VDSOSupport as requested by Chromium.
The call is moved to InitializeSymbolizer().
PiperOrigin-RevId: 319275021
--
0c91944889ad2bd10bc8080f4cd8083ca1d5de46 by Derek Mauro <dmauro@google.com>:
Check for the lock_returned attribute before using it
PiperOrigin-RevId: 319273193
--
1001fa71bfb850f00502777f787aeff6e80654ca by Derek Mauro <dmauro@google.com>:
Remove a no longer relevant MSVC code guard
PiperOrigin-RevId: 319266085
--
a80caee79eb3f377c6bf97bec6b692c55169fe53 by Abseil Team <absl-team@google.com>:
Bug fix to StrFormat %a rounding behavior for `long double`.
PiperOrigin-RevId: 319238900
--
fdec318c449f1ca586145397099b03d973b738c4 by Abseil Team <absl-team@google.com>:
Add test cases for absl::Time +/- absl::InfiniteDuration() ==
absl::Infinite{Future|Past}.
PiperOrigin-RevId: 319223053
GitOrigin-RevId: 510cd0bc2ff9cf21e1e960264d179fa333a88612
Change-Id: I4b8932fb0ec6ab9c868450faf4ed837092a7c0c0
--
739f9fb80212c21c015fec473e9e29803a156ef9 by Derek Mauro <dmauro@google.com>:
Define FlagStateInterface::~FlagStateInterface() in the translation
unit in which it is actually declared
Fixes#717
PiperOrigin-RevId: 319083605
--
913ef1f23113268b22d636d3ae3b992862efdb1a by Derek Mauro <dmauro@google.com>:
Fix ABSL_LOCK_RETURNED statement
PiperOrigin-RevId: 319078667
--
a43b1413da1770d638147c73e7e1693cfaf869c7 by Derek Mauro <dmauro@google.com>:
Fix redeclaration ‘absl::Cord::InlineRep::kMaxInline’, which differs in ‘constexpr’
Fixes#725
PiperOrigin-RevId: 319060910
--
1ad7d491a80f6c9de78a6fc20f09b7765d224503 by Abseil Team <absl-team@google.com>:
Make absl SpinLock trivially destructible when possible
PiperOrigin-RevId: 319049456
--
659ecad3578dfa669854a82279fa590002bdb37f by Derek Mauro <dmauro@google.com>:
Remove the static initialization of global variables used by absl::Mutex
as requested by Chromium
PiperOrigin-RevId: 319031204
--
609c491d8bb4f8bb3b44c5a4c0bee51c583df24c by Abseil Team <absl-team@google.com>:
Add implementation of %a and %A to absl::StrFormat.
Prior to this it just fell back to sprintf.
PiperOrigin-RevId: 318888039
--
5e8ae6392bcd135248aac14c4b9f2a5116868678 by Abseil Team <absl-team@google.com>:
Google-internal changes only.
PiperOrigin-RevId: 318857077
--
4a2578e33e8442954e29e5f0380ddfcf0f033f0d by Greg Falcon <gfalcon@google.com>:
Change of enum constants to accommodate internal change.
PiperOrigin-RevId: 318844716
--
4b578b102816260c213675759f4c15911735578a by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 318704453
--
0ee82fd24d548b260c9229fa1f54571dae1dfa24 by Gennadiy Rozental <rogeeff@google.com>:
Allow lookup of retired flags.
At the moment we issue warning on attempt to find a retired flag. This way we can't even check if flag is retired without issuing the warning.
With this change we will only issue the warning if one tries to access any functionality of retired flag but it's name "is retired" status, and type.
PiperOrigin-RevId: 318605017
--
3e35fe9b4c79f636fa328c59e2aabb93e29b7c99 by Abseil Team <absl-team@google.com>:
Fix error return from InstallSymbolDecorator().
PiperOrigin-RevId: 318490405
--
ae46063f3eb2998cb961f62a359d932e5908a4bc by Abseil Team <absl-team@google.com>:
Do not make copies of iterated collection elements into the loop variable.
PiperOrigin-RevId: 318423139
--
d06a075a12aab5f6ab98474677ce50d588b21de3 by Abseil Team <absl-team@google.com>:
add missing word making the error code better English
PiperOrigin-RevId: 318335052
GitOrigin-RevId: 739f9fb80212c21c015fec473e9e29803a156ef9
Change-Id: Id77a0a4b1959036b00555deef40e82d51884fbc1
--
517dc7eba9878290fc93c6523dc6d6e2c49b8c1e by Abseil Team <absl-team@google.com>:
Handle 'nan' in HumanReadableInt::ToInt64.
PiperOrigin-RevId: 318121226
--
4fa6103b46dbc1375d416810dba591ab4f4898d1 by Abseil Team <absl-team@google.com>:
Promote `float`s to `double`s before formatting.
This will bring StrFormat behavior more in line with that of sprintf.
PiperOrigin-RevId: 318091841
--
e4083a4b64b077d8520ccd8e0ca90da24f4ea24d by Abseil Team <absl-team@google.com>:
Google-internal changes only.
PiperOrigin-RevId: 318069900
--
ab24f60127db089bccaf5fb7d2d1967c76f34768 by Greg Falcon <gfalcon@google.com>:
Inclusive language fix: Stop using blacklist/whitelist terminology in Abseil.
PiperOrigin-RevId: 317925379
--
52b56a27a773ea7c10ea8fd456ed606b9d778947 by Abseil Team <absl-team@google.com>:
Add test for floats and label tests for double properly.
PiperOrigin-RevId: 317916380
--
0f405960ab5b34d673244fda8bb9141c8f5c1a4f by Abseil Team <absl-team@google.com>:
Remove the static initialization of global variables used by absl::Mutex
as requested by Chromium
PiperOrigin-RevId: 317911430
--
ce8cb49d8f4f68950fd111682657ba57d5a09ca0 by Abseil Team <absl-team@google.com>:
Internal Change
PiperOrigin-RevId: 317864956
--
a781948e09fb8406d21a494b2fa4f78edaf9c2ea by Abseil Team <absl-team@google.com>:
Swap ABSL_DLL / ABSL_INTERNAL_ATOMIC_HOOK_ATTRIBUTES order to fix clang-cl builds.
PiperOrigin-RevId: 317858053
--
4ba197f0dd2cbf8f9b96cebffd878c8847d6ce8d by Gennadiy Rozental <rogeeff@google.com>:
Migrate use of annotation macros to ABSL namespaced names
PiperOrigin-RevId: 317792057
GitOrigin-RevId: 517dc7eba9878290fc93c6523dc6d6e2c49b8c1e
Change-Id: I1a0c04d01adbdc5106b68fd69c97c31f822e11dc
--
34c0d521b11ed4191ea3e071a864a84e5e5941b7 by Matthew Brown <matthewbr@google.com>:
Release absl::StrFormat custom type extensions
- Allows StrFormat methods to be extended to accept types which implement
AbslFormatConvert()
- NOLINTNEXTLINE(readability-redundant-declaration) used, declarations are
required in some compilers.
PiperOrigin-RevId: 316963065
--
4d475b5ad02d41057447d722ad35573fc4f48d1f by Evan Brown <ezb@google.com>:
Small fix to previous change: the first overload of insert_iterator_unique wasn't actually being selected. Fix that issue and add tests to verify that it actually works.
Note: couldn't use TestInstanceTracker here because that counts instances (and decrements in destructor) rather than counting all constructor calls.
PiperOrigin-RevId: 316927690
GitOrigin-RevId: 34c0d521b11ed4191ea3e071a864a84e5e5941b7
Change-Id: If8bbb8317b93af4084ac4cc55b752b99b1581b58
--
5b9d5ce21074c0541432555d383d1b9c5898b553 by Gennadiy Rozental <rogeeff@google.com>:
Convert FlagSaver into public API
PiperOrigin-RevId: 314799739
--
5f796c9862b1177f161f4b10fe1a84698ebbb5cf by Abseil Team <absl-team@google.com>:
Google-internal changes only.
PiperOrigin-RevId: 314786474
--
67f2ae0ac5ae73bcd9d57a058ac4fea8fc1243ba by Gennadiy Rozental <rogeeff@google.com>:
Makes sure stacktrace_generic is only used with glibc.
Fixes#701
PiperOrigin-RevId: 314726944
--
efb1ef3636b0698b79d3ee3590f12c4dff32a3cb by Samuel Benzaquen <sbenza@google.com>:
Take the bits into account when reserving the space for the operation, not just
the exponent.
PiperOrigin-RevId: 314622744
GitOrigin-RevId: 5b9d5ce21074c0541432555d383d1b9c5898b553
Change-Id: I080a5e333e2dc1545b5aa0417882f7ac7116a20c
--
f012012ef78234a6a4585321b67d7b7c92ebc266 by Laramie Leavitt <lar@google.com>:
Slight restructuring of absl/random/internal randen implementation.
Convert round-keys.inc into randen_round_keys.cc file.
Consistently use a 128-bit pointer type for internal method parameters. This allows simpler pointer arithmetic in C++ & permits removal of some constants and casts.
Remove some redundancy in comments & constexpr variables. Specifically, all references to Randen algorithm parameters use RandenTraits; duplication in RandenSlow removed.
PiperOrigin-RevId: 312190313
--
dc8b42e054046741e9ed65335bfdface997c6063 by Abseil Team <absl-team@google.com>:
Internal change.
PiperOrigin-RevId: 312167304
--
f13d248fafaf206492c1362c3574031aea3abaf7 by Matthew Brown <matthewbr@google.com>:
Cleanup StrFormat extensions a little.
PiperOrigin-RevId: 312166336
--
9d9117589667afe2332bb7ad42bc967ca7c54502 by Derek Mauro <dmauro@google.com>:
Internal change
PiperOrigin-RevId: 312105213
--
9a12b9b3aa0e59b8ee6cf9408ed0029045543a9b by Abseil Team <absl-team@google.com>:
Complete IGNORE_TYPE macro renaming.
PiperOrigin-RevId: 311999699
--
64756f20d61021d999bd0d4c15e9ad3857382f57 by Gennadiy Rozental <rogeeff@google.com>:
Switch to fixed bytes specific default value.
This fixes the Abseil Flags for big endian platforms.
PiperOrigin-RevId: 311844448
--
bdbe6b5b29791dbc3816ada1828458b3010ff1e9 by Laramie Leavitt <lar@google.com>:
Change many distribution tests to use pcg_engine as a deterministic source of entropy.
It's reasonable to test that the BitGen itself has good entropy, however when testing the cross product of all random distributions x all the architecture variations x all submitted changes results in a large number of tests. In order to account for these failures while still using good entropy requires that our allowed sigma need to account for all of these independent tests.
Our current sigma values are too restrictive, and we see a lot of failures, so we have to either relax the sigma values or convert some of the statistical tests to use deterministic values.
This changelist does the latter.
PiperOrigin-RevId: 311840096
GitOrigin-RevId: f012012ef78234a6a4585321b67d7b7c92ebc266
Change-Id: Ic84886f38ff30d7d72c126e9b63c9a61eb729a1a