Upgrade to Abseil LTS version 20260526.0.
abseil-cpp changes: https://github.com/abseil/abseil-cpp/releases/tag/20260526.0
Production source file count increases from 153 to 162 after filtering.
Extended compile filter to also exclude
*matchers*.cc (pulls in gmock) and *_win.cc on
non-Windows platforms (requires
<windows.h>).
Patched pragma(s) suppressing important diagnostics:
inst/include/absl/container/inlined_vector.hinst/include/absl/container/internal/inlined_vector.hinst/include/absl/hash/internal/hash.hinst/include/absl/meta/internal/constexpr_testing.hinst/include/absl/strings/internal/charconv_bigint.hPatched non-portable pragma(s):
inst/include/absl/base/casts.hinst/include/absl/container/inlined_vector.hinst/include/absl/container/internal/inlined_vector.hinst/include/absl/functional/internal/any_invocable.hinst/include/absl/strings/internal/cord_internal.hinst/include/absl/strings/internal/cord_rep_flat.hinst/include/absl/types/any_span.hPatched pragma(s) suppressing diagnostics:
inst/include/absl/container/internal/hash_policy_traits.hinst/include/absl/container/internal/raw_hash_set_test.ccinst/include/absl/container/internal/test_allocator.hinst/include/absl/flags/commandlineflag.hinst/include/absl/flags/internal/flag.hinst/include/absl/flags/reflection.ccinst/include/absl/random/internal/explicit_seed_seq_test.ccinst/include/absl/random/internal/randen_detect.ccinst/include/absl/random/internal/randen_hwaes.ccinst/include/absl/strings/internal/str_format/bind_test.ccinst/include/absl/strings/internal/utf8_test.ccinst/include/absl/strings/str_split_test.ccNeedsCompilation: yes).configure script (Unix/macOS) and
configure.win (Windows) compile all 153 production Abseil
source files in inst/include/absl/ into a static library
libabsl.a, which is installed into the package’s
libs/ directory.abseil_lib() R function that returns the path to
the installed libabsl.a, allowing downstream packages to
link non-header-only Abseil components without recompiling the library
themselves.Import Abseil LTS version 20230802.0
Deal with files which contain pragma(s) suppressing important diagnostics:
inst/include/absl/base/internal/invoke.hinst/include/absl/container/internal/inlined_vector.hFiles which contain non-portable pragma(s):
inst/include/absl/base/internal/invoke.hinst/include/absl/container/inlined_vector.hinst/include/absl/functional/internal/any_invocable.hinst/include/absl/random/internal/explicit_seed_seq_test.ccinst/include/absl/strings/internal/cord_rep_flat.hinst/include/absl/types/internal/optional.hFiles which contain pragma(s) suppressing diagnostics:
inst/include/absl/algorithm/algorithm_test.ccinst/include/absl/container/inlined_vector.hinst/include/absl/container/internal/counting_allocator.hinst/include/absl/container/internal/raw_hash_set_test.ccinst/include/absl/functional/internal/any_invocable.hinst/include/absl/random/internal/explicit_seed_seq_test.ccinst/include/absl/random/internal/randen_detect.ccinst/include/absl/random/internal/randen_hwaes.ccinst/include/absl/strings/internal/cord_rep_flat.hinst/include/absl/strings/internal/str_format/bind_test.ccinst/include/absl/strings/internal/utf8_test.ccinst/include/absl/strings/str_split_test.ccinst/include/absl/types/internal/optional.h