* installing *source* package ‘s2’ ...
** package ‘s2’ successfully unpacked and MD5 sums checked
** using staged installation
Found pkg-config cflags and libs!
Testing compiler using PKG_CFLAGS=
Using PKG_LIBS=-l:libssl.so.3 -l:libcrypto.so.3 
Using PKG_CFLAGS= -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN
** libs
using C compiler: ‘clang version 19.1.5’
using C++ compiler: ‘clang version 19.1.5’
using C++14
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-clang/s2/src'
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/cycleclock.cc -o absl/base/internal/cycleclock.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/low_level_alloc.cc -o absl/base/internal/low_level_alloc.o
In file included from absl/base/internal/low_level_alloc.cc:24:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/raw_logging.cc -o absl/base/internal/raw_logging.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/scoped_set_env.cc -o absl/base/internal/scoped_set_env.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/spinlock_wait.cc -o absl/base/internal/spinlock_wait.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/spinlock.cc -o absl/base/internal/spinlock.o
In file included from absl/base/internal/spinlock.cc:27:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/strerror.cc -o absl/base/internal/strerror.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/sysinfo.cc -o absl/base/internal/sysinfo.o
In file included from absl/base/internal/sysinfo.cc:53:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/thread_identity.cc -o absl/base/internal/thread_identity.o
In file included from absl/base/internal/thread_identity.cc:27:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/throw_delegate.cc -o absl/base/internal/throw_delegate.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/internal/unscaledcycleclock.cc -o absl/base/internal/unscaledcycleclock.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/base/log_severity.cc -o absl/base/log_severity.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/container/internal/hashtablez_sampler_force_weak_definition.cc -o absl/container/internal/hashtablez_sampler_force_weak_definition.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/container/internal/hashtablez_sampler.cc -o absl/container/internal/hashtablez_sampler.o
In file included from absl/container/internal/hashtablez_sampler_force_weak_definition.cc:15:
In file included from ../src/absl/container/internal/hashtablez_sampler.h:52:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/container/internal/raw_hash_set.cc -o absl/container/internal/raw_hash_set.o
In file included from absl/container/internal/hashtablez_sampler.cc:15:
In file included from ../src/absl/container/internal/hashtablez_sampler.h:52:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/failure_signal_handler.cc -o absl/debugging/failure_signal_handler.o
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/container/internal/raw_hash_set.cc:15:
In file included from ../src/absl/container/internal/raw_hash_set.h:187:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/internal/address_is_readable.cc -o absl/debugging/internal/address_is_readable.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/internal/demangle.cc -o absl/debugging/internal/demangle.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/internal/elf_mem_image.cc -o absl/debugging/internal/elf_mem_image.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/internal/examine_stack.cc -o absl/debugging/internal/examine_stack.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/internal/stack_consumption.cc -o absl/debugging/internal/stack_consumption.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/internal/vdso_support.cc -o absl/debugging/internal/vdso_support.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/leak_check.cc -o absl/debugging/leak_check.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/stacktrace.cc -o absl/debugging/stacktrace.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/debugging/symbolize.cc -o absl/debugging/symbolize.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/numeric/int128.cc -o absl/numeric/int128.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/profiling/internal/exponential_biased.cc -o absl/profiling/internal/exponential_biased.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/profiling/internal/periodic_sampler.cc -o absl/profiling/internal/periodic_sampler.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/ascii.cc -o absl/strings/ascii.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/charconv.cc -o absl/strings/charconv.o
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = double, Source = uint64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:127:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = double, Source = uint64_t, $2 = (no value)]
  127 |     return absl::bit_cast<double>(dbl);
      |            ^
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = double, Source = uint64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:127:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = double, Source = uint64_t, $2 = (no value)]
  127 |     return absl::bit_cast<double>(dbl);
      |            ^
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = double, Source = uint64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:127:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = double, Source = uint64_t, $2 = (no value)]
  127 |     return absl::bit_cast<double>(dbl);
      |            ^
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = double, Source = uint64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:127:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = double, Source = uint64_t, $2 = (no value)]
  127 |     return absl::bit_cast<double>(dbl);
      |            ^
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = float, Source = uint32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:167:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = float, Source = uint32_t, $2 = (no value)]
  167 |     return absl::bit_cast<float>(flt);
      |            ^
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = float, Source = uint32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:167:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = float, Source = uint32_t, $2 = (no value)]
  167 |     return absl::bit_cast<float>(flt);
      |            ^
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = float, Source = uint32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:167:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = float, Source = uint32_t, $2 = (no value)]
  167 |     return absl::bit_cast<float>(flt);
      |            ^
In file included from absl/strings/charconv.cc:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = float, Source = uint32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/strings/charconv.cc:167:12: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = float, Source = uint32_t, $2 = (no value)]
  167 |     return absl::bit_cast<float>(flt);
      |            ^
17 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/cord_analysis.cc -o absl/strings/cord_analysis.o
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_analysis.cc:15:
In file included from ../src/absl/strings/cord_analysis.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/cord_buffer.cc -o absl/strings/cord_buffer.o
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/cord.cc -o absl/strings/cord.o
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord_buffer.cc:15:
In file included from ../src/absl/strings/cord_buffer.h:37:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/escaping.cc -o absl/strings/escaping.o
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/escaping.cc:15:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/cord.cc:49:
In file included from ../src/absl/strings/str_format.h:77:
In file included from ../src/absl/strings/internal/str_format/bind.h:26:
../src/absl/strings/internal/str_format/parser.h:315:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  315 |           enable_if(str_format_internal::EnsureConstexpr(format),
      |           ^
../src/absl/strings/internal/str_format/parser.h:317:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  317 |           enable_if(str_format_internal::ValidFormatImpl<C...>(format),
      |           ^
In file included from absl/strings/cord.cc:49:
In file included from ../src/absl/strings/str_format.h:77:
../src/absl/strings/internal/str_format/bind.h:139:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  139 |           enable_if(str_format_internal::EnsureConstexpr(s), "constexpr trap"),
      |           ^
../src/absl/strings/internal/str_format/bind.h:145:22: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  145 |       __attribute__((enable_if(str_format_internal::EnsureConstexpr(s),
      |                      ^
../src/absl/strings/internal/str_format/bind.h:154:22: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  154 |       __attribute__((enable_if(ValidFormatImpl<Args...>(s), "bad format trap")))
      |                      ^
../src/absl/strings/internal/str_format/bind.h:158:22: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  158 |       __attribute__((enable_if(ValidFormatImpl<Args...>(s), "bad format trap")))
      |                      ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<unsigned int>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<unsigned int>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
absl/strings/cord.cc:853:32: note: in instantiation of template class 'absl::optional<unsigned int>' requested here
  853 | absl::optional<uint32_t> Cord::ExpectedChecksum() const {
      |                                ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::cord_internal::CordRep *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::cord_internal::CordRep *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>, absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>, absl::is_trivially_destructible<absl::cord_internal::CordRep *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<absl::cord_internal::CordRep *>, std::allocator<absl::cord_internal::CordRep *>>, absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>, absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>, absl::is_trivially_destructible<absl::cord_internal::CordRep *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<absl::cord_internal::CordRep *, 47, std::allocator<absl::cord_internal::CordRep *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
absl/strings/cord.cc:1217:53: note: in instantiation of member function 'absl::InlinedVector<absl::cord_internal::CordRep *, 47>::InlinedVector' requested here
 1217 |   absl::InlinedVector<CordRep*, kInlinedVectorSize> stack;
      |                                                     ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>, absl::is_trivially_destructible<absl::cord_internal::CordRep *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>, absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>, absl::is_trivially_destructible<absl::cord_internal::CordRep *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<absl::cord_internal::CordRep *>, std::allocator<absl::cord_internal::CordRep *>>, absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>, absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>, absl::is_trivially_destructible<absl::cord_internal::CordRep *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<absl::cord_internal::CordRep *, 47, std::allocator<absl::cord_internal::CordRep *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
absl/strings/cord.cc:1217:53: note: in instantiation of member function 'absl::InlinedVector<absl::cord_internal::CordRep *, 47>::InlinedVector' requested here
 1217 |   absl::InlinedVector<CordRep*, kInlinedVectorSize> stack;
      |                                                     ^
In file included from absl/strings/cord.cc:15:
In file included from ../src/absl/strings/cord.h:75:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<int>, absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<int>, std::allocator<int>>, absl::is_trivially_copy_constructible<int>, absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<int, 47, std::allocator<int>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
absl/strings/cord.cc:1218:48: note: in instantiation of member function 'absl::InlinedVector<int, 47>::InlinedVector' requested here
 1218 |   absl::InlinedVector<int, kInlinedVectorSize> indents;
      |                                                ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/charconv_bigint.cc -o absl/strings/internal/charconv_bigint.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/charconv_parse.cc -o absl/strings/internal/charconv_parse.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cord_internal.cc -o absl/strings/internal/cord_internal.o
35 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cord_rep_btree_navigator.cc -o absl/strings/internal/cord_rep_btree_navigator.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cord_rep_btree_reader.cc -o absl/strings/internal/cord_rep_btree_reader.o
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_internal.cc:14:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_navigator.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_navigator.h:21:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cord_rep_btree.cc -o absl/strings/internal/cord_rep_btree.o
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cord_rep_consume.cc -o absl/strings/internal/cord_rep_consume.o
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree_reader.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree_reader.h:21:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::cord_internal::CordRep *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::cord_internal::CordRep *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_consume.cc:45:38: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
   45 | void Consume(CordRep* rep, ConsumeFn consume_fn) {
      |                                      ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_consume.cc:45:38: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
   45 | void Consume(CordRep* rep, ConsumeFn consume_fn) {
      |                                      ^
In file included from absl/strings/internal/cord_rep_consume.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_consume.h:20:
In file included from ../src/absl/functional/function_ref.h:54:
In file included from ../src/absl/functional/internal/function_ref.h:22:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<unsigned long>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<unsigned long>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<unsigned long>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_consume.cc:45:38: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
   45 | void Consume(CordRep* rep, ConsumeFn consume_fn) {
      |                                      ^
26 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cord_rep_crc.cc -o absl/strings/internal/cord_rep_crc.o
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cord_rep_ring.cc -o absl/strings/internal/cord_rep_ring.o
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::cord_internal::CordRep *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::cord_internal::CordRep *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_btree.cc:1047:16: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
 1047 |   Consume(rep, consume);
      |                ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_btree.cc:1047:16: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
 1047 |   Consume(rep, consume);
      |                ^
In file included from absl/strings/internal/cord_rep_btree.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_btree.h:25:
In file included from ../src/absl/strings/internal/cord_data_edge.h:22:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<unsigned long>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<unsigned long>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<unsigned long>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_btree.cc:1047:16: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
 1047 |   Consume(rep, consume);
      |                ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_crc.cc:15:
In file included from ../src/absl/strings/internal/cord_rep_crc.h:23:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cordz_functions.cc -o absl/strings/internal/cordz_functions.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cordz_handle.cc -o absl/strings/internal/cordz_handle.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cordz_info.cc -o absl/strings/internal/cordz_info.o
26 warnings generated.
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/cordz_sample_token.cc -o absl/strings/internal/cordz_sample_token.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::cord_internal::CordRep *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::cord_internal::CordRep *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::cord_internal::CordRep *>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_ring.cc:345:18: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
  345 |   Consume(child, [&](CordRep* child_arg, size_t offset, size_t len) {
      |                  ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::cord_internal::CordRep *>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::cord_internal::CordRep *>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::cord_internal::CordRep *>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_ring.cc:345:18: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
  345 |   Consume(child, [&](CordRep* child_arg, size_t offset, size_t len) {
      |                  ^
In file included from absl/strings/internal/cord_rep_ring.cc:14:
In file included from ../src/absl/strings/internal/cord_rep_ring.h:25:
In file included from ../src/absl/container/internal/layout.h:175:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<unsigned long>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<unsigned long>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<unsigned long>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/cord_rep_ring.cc:345:18: note: in instantiation of template class 'absl::FunctionRef<void (absl::cord_internal::CordRep *, unsigned long, unsigned long)>' requested here
  345 |   Consume(child, [&](CordRep* child_arg, size_t offset, size_t len) {
      |                  ^
26 warnings generated.
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_info.cc:15:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/cordz_sample_token.cc:15:
In file included from ../src/absl/strings/internal/cordz_sample_token.h:17:
In file included from ../src/absl/strings/internal/cordz_info.h:26:
In file included from ../src/absl/strings/internal/cord_internal.h:26:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/escaping.cc -o absl/strings/internal/escaping.o
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/memutil.cc -o absl/strings/internal/memutil.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/ostringstream.cc -o absl/strings/internal/ostringstream.o
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/escaping.cc:15:
In file included from ../src/absl/strings/internal/escaping.h:20:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/pow10_helper.cc -o absl/strings/internal/pow10_helper.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/str_format/arg.cc -o absl/strings/internal/str_format/arg.o
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/arg.cc:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/str_format/bind.cc -o absl/strings/internal/str_format/bind.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/str_format/extension.cc -o absl/strings/internal/str_format/extension.o
In file included from absl/strings/internal/str_format/bind.cc:15:
In file included from ../src/absl/strings/internal/str_format/bind.h:24:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from absl/strings/internal/str_format/bind.cc:15:
In file included from ../src/absl/strings/internal/str_format/bind.h:26:
../src/absl/strings/internal/str_format/parser.h:315:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  315 |           enable_if(str_format_internal::EnsureConstexpr(format),
      |           ^
../src/absl/strings/internal/str_format/parser.h:317:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  317 |           enable_if(str_format_internal::ValidFormatImpl<C...>(format),
      |           ^
In file included from absl/strings/internal/str_format/bind.cc:15:
../src/absl/strings/internal/str_format/bind.h:139:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  139 |           enable_if(str_format_internal::EnsureConstexpr(s), "constexpr trap"),
      |           ^
../src/absl/strings/internal/str_format/bind.h:145:22: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  145 |       __attribute__((enable_if(str_format_internal::EnsureConstexpr(s),
      |                      ^
../src/absl/strings/internal/str_format/bind.h:154:22: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  154 |       __attribute__((enable_if(ValidFormatImpl<Args...>(s), "bad format trap")))
      |                      ^
../src/absl/strings/internal/str_format/bind.h:158:22: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  158 |       __attribute__((enable_if(ValidFormatImpl<Args...>(s), "bad format trap")))
      |                      ^
In file included from absl/strings/internal/str_format/extension.cc:16:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/str_format/float_conversion.cc -o absl/strings/internal/str_format/float_conversion.o
11 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/str_format/output.cc -o absl/strings/internal/str_format/output.o
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::Span<unsigned int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::Span<unsigned int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::Span<unsigned int>>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::Span<unsigned int>>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::Span<unsigned int>>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/str_format/float_conversion.cc:64:64: note: in instantiation of template class 'absl::FunctionRef<void (absl::Span<unsigned int>)>' requested here
   64 |   ABSL_ATTRIBUTE_NOINLINE static void RunWithCapacityImpl(Func f) {
      |                                                                ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::Span<unsigned int>>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::Span<unsigned int>>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::Span<unsigned int>>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/str_format/float_conversion.cc:64:64: note: in instantiation of template class 'absl::FunctionRef<void (absl::Span<unsigned int>)>' requested here
   64 |   ABSL_ATTRIBUTE_NOINLINE static void RunWithCapacityImpl(Func f) {
      |                                                                ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/str_format/float_conversion.cc:139:70: note: in instantiation of template class 'absl::FunctionRef<void (absl::str_format_internal::(anonymous namespace)::BinaryToDecimal)>' requested here
  139 |                             absl::FunctionRef<void(BinaryToDecimal)> f) {
      |                                                                      ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::str_format_internal::(anonymous namespace)::BinaryToDecimal>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/str_format/float_conversion.cc:139:70: note: in instantiation of template class 'absl::FunctionRef<void (absl::str_format_internal::(anonymous namespace)::BinaryToDecimal)>' requested here
  139 |                             absl::FunctionRef<void(BinaryToDecimal)> f) {
      |                                                                      ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/functional/internal/function_ref.h:46:16: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
   46 |          absl::is_trivially_copy_constructible<T>::value &&
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/str_format/float_conversion.cc:247:77: note: in instantiation of template class 'absl::FunctionRef<void (absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator)>' requested here
  247 |       uint128 v, int exp, absl::FunctionRef<void(FractionalDigitGenerator)> f) {
      |                                                                             ^
In file included from absl/strings/internal/str_format/float_conversion.cc:15:
In file included from ../src/absl/strings/internal/str_format/float_conversion.h:18:
In file included from ../src/absl/strings/internal/str_format/extension.h:28:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/functional/internal/function_ref.h:47:16: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
   47 |          absl::is_trivially_copy_assignable<
      |                ^
../src/absl/functional/internal/function_ref.h:54:36: note: in instantiation of function template specialization 'absl::functional_internal::PassByValue<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
   54 | struct ForwardT : std::conditional<PassByValue<T>(), T, T&&> {};
      |                                    ^
../src/absl/functional/internal/function_ref.h:63:1: note: in instantiation of template class 'absl::functional_internal::ForwardT<absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator>' requested here
   63 | using Invoker = R (*)(VoidPtr, typename ForwardT<Args>::type...);
      | ^
../src/absl/functional/function_ref.h:137:30: note: in instantiation of template type alias 'Invoker' requested here
  137 |   absl::functional_internal::Invoker<R, Args...> invoker_;
      |                              ^
absl/strings/internal/str_format/float_conversion.cc:247:77: note: in instantiation of template class 'absl::FunctionRef<void (absl::str_format_internal::(anonymous namespace)::FractionalDigitGenerator)>' requested here
  247 |       uint128 v, int exp, absl::FunctionRef<void(FractionalDigitGenerator)> f) {
      |                                                                             ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/str_format/parser.cc -o absl/strings/internal/str_format/parser.o
29 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/internal/utf8.cc -o absl/strings/internal/utf8.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/match.cc -o absl/strings/match.o
In file included from absl/strings/internal/str_format/parser.cc:15:
In file included from ../src/absl/strings/internal/str_format/parser.h:31:
In file included from ../src/absl/strings/internal/str_format/checker.h:19:
In file included from ../src/absl/strings/internal/str_format/arg.h:30:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from absl/strings/internal/str_format/parser.cc:15:
../src/absl/strings/internal/str_format/parser.h:315:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  315 |           enable_if(str_format_internal::EnsureConstexpr(format),
      |           ^
../src/absl/strings/internal/str_format/parser.h:317:11: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  317 |           enable_if(str_format_internal::ValidFormatImpl<C...>(format),
      |           ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/numbers.cc -o absl/strings/numbers.o
7 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/str_cat.cc -o absl/strings/str_cat.o
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_cat.cc:15:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/numbers.cc:18:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/str_replace.cc -o absl/strings/str_replace.o
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/str_replace.cc:17:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/str_split.cc -o absl/strings/str_split.o
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/string_view.cc -o absl/strings/string_view.o
In file included from absl/strings/str_split.cc:15:
In file included from ../src/absl/strings/str_split.h:48:
In file included from ../src/absl/strings/internal/str_split_internal.h:42:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/strings/substitute.cc -o absl/strings/substitute.o
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
In file included from ../src/absl/strings/substitute.h:81:
In file included from ../src/absl/strings/escaping.h:32:
In file included from ../src/absl/strings/str_join.h:59:
In file included from ../src/absl/strings/internal/str_join_internal.h:42:
In file included from ../src/absl/strings/internal/resize_uninitialized.h:26:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:372:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  372 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:380:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  380 |     ABSL_BAD_CALL_IF(substitute_internal::PlaceholderBitmask(format) != 1,
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:389:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  389 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:399:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  399 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:410:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  410 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:422:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  422 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:435:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  435 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:446:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  446 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:458:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  458 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:470:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  470 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:483:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  483 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:611:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  611 |     ABSL_BAD_CALL_IF(substitute_internal::PlaceholderBitmask(format) != 0,
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:617:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  617 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:625:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  625 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:634:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  634 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:644:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  644 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:655:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  655 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:667:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  667 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:680:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  680 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:694:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  694 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:706:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  706 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
In file included from absl/strings/substitute.cc:15:
../src/absl/strings/substitute.h:719:5: warning: 'enable_if' is a clang extension [-Wgcc-compat]
  719 |     ABSL_BAD_CALL_IF(
      |     ^
../src/absl/base/macros.h:78:18: note: expanded from macro 'ABSL_BAD_CALL_IF'
   78 |   __attribute__((enable_if(expr, "Bad call trap"), unavailable(msg)))
      |                  ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/barrier.cc -o absl/synchronization/barrier.o
45 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/blocking_counter.cc -o absl/synchronization/blocking_counter.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/internal/create_thread_identity.cc -o absl/synchronization/internal/create_thread_identity.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/internal/graphcycles.cc -o absl/synchronization/internal/graphcycles.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/internal/per_thread_sem.cc -o absl/synchronization/internal/per_thread_sem.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/internal/waiter.cc -o absl/synchronization/internal/waiter.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/mutex.cc -o absl/synchronization/mutex.o
In file included from absl/synchronization/mutex.cc:42:
In file included from ../src/absl/base/call_once.h:34:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
absl/synchronization/mutex.cc:1220:21: warning: unused variable 'mu_events' [-Wunused-variable]
 1220 |         SynchEvent *mu_events = GetSynchEvent(mu);
      |                     ^~~~~~~~~
absl/synchronization/mutex.cc:1443:21: warning: unused variable 'mu_events' [-Wunused-variable]
 1443 |         SynchEvent *mu_events = GetSynchEvent(this);
      |                     ^~~~~~~~~
absl/synchronization/mutex.cc:2428:17: warning: unused variable 'e' [-Wunused-variable]
 2428 |     SynchEvent *e = GetSynchEvent(this);
      |                 ^
absl/synchronization/mutex.cc:2437:17: warning: unused variable 'e' [-Wunused-variable]
 2437 |     SynchEvent *e = GetSynchEvent(this);
      |                 ^
absl/synchronization/mutex.cc:1291:14: warning: unused function 'CurrentStackString' [-Wunused-function]
 1291 | static char *CurrentStackString(char *buf, int maxlen, bool symbolize) {
      |              ^~~~~~~~~~~~~~~~~~
10 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/synchronization/notification.cc -o absl/synchronization/notification.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/civil_time.cc -o absl/time/civil_time.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/clock.cc -o absl/time/clock.o
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from absl/time/civil_time.cc:20:
In file included from ../src/absl/strings/str_cat.h:63:
In file included from ../src/absl/strings/numbers.h:43:
In file included from ../src/absl/base/internal/endian.h:22:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/duration.cc -o absl/time/duration.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/format.cc -o absl/time/format.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/civil_time_detail.cc -o absl/time/internal/cctz/src/civil_time_detail.o
In file included from absl/time/duration.cc:69:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/time/duration.cc:192:10: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  192 |   return absl::bit_cast<uint64_t>(v);
      |          ^
In file included from absl/time/duration.cc:69:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/time/duration.cc:192:10: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  192 |   return absl::bit_cast<uint64_t>(v);
      |          ^
In file included from absl/time/duration.cc:69:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/time/duration.cc:192:10: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  192 |   return absl::bit_cast<uint64_t>(v);
      |          ^
In file included from absl/time/duration.cc:69:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
absl/time/duration.cc:192:10: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  192 |   return absl::bit_cast<uint64_t>(v);
      |          ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_fixed.cc -o absl/time/internal/cctz/src/time_zone_fixed.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_format.cc -o absl/time/internal/cctz/src/time_zone_format.o
11 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_if.cc -o absl/time/internal/cctz/src/time_zone_if.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_impl.cc -o absl/time/internal/cctz/src/time_zone_impl.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_info.cc -o absl/time/internal/cctz/src/time_zone_info.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_libc.cc -o absl/time/internal/cctz/src/time_zone_libc.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_lookup.cc -o absl/time/internal/cctz/src/time_zone_lookup.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/time_zone_posix.cc -o absl/time/internal/cctz/src/time_zone_posix.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/internal/cctz/src/zone_info_source.cc -o absl/time/internal/cctz/src/zone_info_source.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/time/time.cc -o absl/time/time.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/types/bad_any_cast.cc -o absl/types/bad_any_cast.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/types/bad_optional_access.cc -o absl/types/bad_optional_access.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c absl/types/bad_variant_access.cc -o absl/types/bad_variant_access.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c cpp-compat.cpp -o cpp-compat.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-accessors.cpp -o s2-accessors.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-bounds.cpp -o s2-bounds.o
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-cell.cpp -o s2-cell.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-accessors.cpp:2:
In file included from ./geography-operator.h:7:
In file included from ./geography.h:7:
In file included from ./s2geography.h:4:
In file included from ./s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-bounds.cpp:2:
In file included from ./s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-cell-union.cpp -o s2-cell-union.o
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-cell.cpp:8:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-constructors-formatters.cpp -o s2-constructors-formatters.o
s2-constructors-formatters.cpp:2:9: warning: 'R_NO_REMAP' macro redefined [-Wmacro-redefined]
    2 | #define R_NO_REMAP
      |         ^
<command line>:5:9: note: previous definition is here
    5 | #define R_NO_REMAP 1
      |         ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-cell-union.cpp:2:
In file included from ./s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-constructors-formatters.cpp:6:
In file included from ./s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-predicates.cpp -o s2-predicates.o
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-transformers.cpp -o s2-transformers.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c init.cpp -o init.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c RcppExports.cpp -o RcppExports.o
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
39 warnings generated.
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-predicates.cpp:2:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-geography.cpp -o s2-geography.o
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-transformers.cpp:2:
In file included from ./s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-geography.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-lnglat.cpp -o s2-lnglat.o
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2-matrix.cpp -o s2-matrix.o
In file included from s2-lnglat.cpp:2:
In file included from ./s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
38 warnings generated.
/usr/local/clang19/bin/clang -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include    -fpic  -O3 -Wall -pedantic -Wp,-D_FORTIFY_SOURCE=3  -c wk-impl.c -o wk-impl.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/accessors.cc -o s2geography/accessors.o
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
5 warnings generated.
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      /usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/accessors-geog.cc -o s2geography/accessors-geog.o
|                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      ../src/absl/meta/type_traits.h| :                                        ^559
:8: ../src/absl/types/internal/optional.hwarning: :builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]182
:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
    559182 |  |             ( _ _ h abso_otlr iuvniuasle_dc o=p ya(bEsxlt:e:nitss_Rtermiovvieadl)l y|_|c o!pkyI_scCoonpsytOrruMcotviebCloen<sTt>r:u:cvtailbulee&)& 
&      &| 
                              ^      
|        ^
../src/absl/types/optional.h:119:45: ../src/absl/meta/type_traits.hnote: :in instantiation of default argument for 'optional_data<std::allocator<int>>' required here571
:39: note:   in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here119
 | cl  a571s | s   o p t i o n a l  b:o oplr,i vtaytpe optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shapee->_itdr(a)i)t;s
_      i| n                                             ^t
ernal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
In file included from       s2-matrix.cpp| :                                   ^6
:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_refereIn file included from ns2geography/accessors.ccc:e2<:
TIn file included from >s2geography/accessors.h:::4t:
yIn file included from ps2geography/geography.he:)4 :
&In file included from &../src/s2/s2polygon.h
:      29| :
                ^In file included from 
../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:../src/absl/types/internal/optional.h31::
183In file included from :../src/s2/r2.h21::22 :
note: In file included from in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here../src/s2/util/math/vector.h
:34:
In file included from   ../src/absl/utility/utility.h183: | 50 :
 In file included from  ../src/absl/base/internal/invoke.h : 64 :
 ../src/absl/meta/type_traits.h : 560 : 8 :   warning: abuiltin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]b
sl::  i560s | _ t r i v i a(l_l_yh_acso_ptyr_iavsisailg_naasbslieg<nt(yEpxetneanmtes Rsetmdo:v:erde)m o|v|e _!ckvI<s
C      o| p                    ^y
OrMov../src/absl/types/optional.he:A119s:s45i:g nnote: ain instantiation of default argument for 'optional_data<std::allocator<int>>' required hereb
le) &  &119
 |       c| l       ^a
ss optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~../src/absl/meta/type_traits.h
:301:36../src/absl/container/internal/common.h:: 113warning: :builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]34
: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here  
301 |     113  |   :  asbtsdl::::ionptteigornaall_<caolnlsotcaantto<rb_otoylp,e >_ _ahlalso_ct_r i=v i{a}l;_
d      e| s                                 ^t
ructor(../src/absl/container/internal/common.hT:)120 :&28&:
       note: | in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here                                   ^

  120../src/absl/meta/type_traits.h | :c562l:a7s:s  note: nin instantiation of template class 'absl::is_trivially_destructible<float>' requested hereo
de_  h562a | n d l e   :  ipsu_btlriicv inaoldley__hdaensdtlreu_cbtaisbel<eP<oElxitceynTtrsaRietmso,v eAdl>l:o:cv>a l{u
e       | &                           ^&

      |       ^
../src/s2/s2closest_edge_query_base.h:../src/absl/meta/type_traits.h573::57146::39 :note:  in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested herenote: 
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/accessors.cc:2:
In file included from s2geography/accessors.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/linear-referencing.cc -o s2geography/linear-referencing.o
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
./s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
./s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2-matrix.cpp:6:
In file included from ./s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
./s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/accessors-geog.cc:2:
In file included from s2geography/accessors-geog.h:4:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/distance.cc -o s2geography/distance.o
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/linear-referencing.cc:2:
In file included from s2geography/linear-referencing.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/build.cc -o s2geography/build.o
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
57 warnings generated.
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2geography/distance.cc:2:
In file included from s2geography/distance.h:4:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2geography/build.cc:2:
In file included from s2geography/build.h:4:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<int>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
/usr/local/clang19/bin/../include/c++/v1/vector:985:60: note: in instantiation of template class 'gtl::compact_array<int>' requested here
  985 |       __alloc_traits::destroy(__alloc(), std::__to_address(--__soon_to_be_end));
      |                                                            ^
/usr/local/clang19/bin/../include/c++/v1/vector:979:5: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__base_destruct_at_end' requested here
  979 |     __base_destruct_at_end(this->__begin_);
      |     ^
/usr/local/clang19/bin/../include/c++/v1/vector:530:16: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__clear' requested here
  530 |         __vec_.__clear();
      |                ^
/usr/local/clang19/bin/../include/c++/v1/vector:541:67: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__destroy_vector::operator()' requested here
  541 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI ~vector() { __destroy_vector (*this)(); }
      |                                                                   ^
../src/s2/s2builder.h:134:7: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::~vector' requested here
  134 | class S2Builder {
      |       ^
39 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/coverings.cc -o s2geography/coverings.o
57 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/geography.cc -o s2geography/geography.o
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/geography.cc:2:
In file included from s2geography/geography.h:4:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2geography/coverings.cc:2:
In file included from s2geography/coverings.h:4:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2geography/predicates.cc -o s2geography/predicates.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/base/stringprintf.cc -o s2/base/stringprintf.o
38 warnings generated.
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/base/strtoint.cc -o s2/base/strtoint.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2geography/predicates.cc:2:
In file included from s2geography/predicates.h:4:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/encoded_s2cell_id_vector.cc -o s2/encoded_s2cell_id_vector.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/encoded_s2point_vector.cc -o s2/encoded_s2point_vector.o
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/encoded_s2shape_index.cc -o s2/encoded_s2shape_index.o
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/encoded_s2cell_id_vector.cc:18:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/encoded_s2point_vector.cc:18:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/encoded_string_vector.cc -o s2/encoded_string_vector.o
s2/encoded_s2point_vector.cc:446:10: warning: variable 'offset_bytes_sum' set but not used [-Wunused-but-set-variable]
  446 |   uint64 offset_bytes_sum = 0;
      |          ^
s2/encoded_s2point_vector.cc:447:10: warning: variable 'delta_nibbles_sum' set but not used [-Wunused-but-set-variable]
  447 |   uint64 delta_nibbles_sum = 0;
      |          ^
s2/encoded_s2point_vector.cc:448:10: warning: variable 'exceptions_sum' set but not used [-Wunused-but-set-variable]
  448 |   uint64 exceptions_sum = 0;
      |          ^
22 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/id_set_lexicon.cc -o s2/id_set_lexicon.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/encoded_s2shape_index.cc:18:
In file included from ../src/s2/encoded_s2shape_index.h:21:
In file included from ../src/s2/encoded_s2cell_id_vector.h:21:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
s2/encoded_s2shape_index.cc:158:41: warning: variable 'base' set but not used [-Wunused-but-set-variable]
  158 |     for (int i = cells_decoded_.size(), base = 0; --i >= 0; base += 64) {
      |                                         ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/encoded_string_vector.cc:18:
In file included from ../src/s2/encoded_string_vector.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
39 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/mutable_s2shape_index.cc -o s2/mutable_s2shape_index.o
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/r2rect.cc -o s2/r2rect.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s1angle.cc -o s2/s1angle.o
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/r2rect.cc:18:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s1chord_angle.cc -o s2/s1chord_angle.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s1angle.cc:18:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
5 warnings generated.
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:140:14: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
  140 |     : public node_handle_base<PolicyTraits, Alloc> {
      |              ^
s2/mutable_s2shape_index.cc:1465:37: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>, absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
 1465 |   cell_map_.insert(cell_map_.end(), std::make_pair(pcell.id(), cell));
      |                                     ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:140:14: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
  140 |     : public node_handle_base<PolicyTraits, Alloc> {
      |              ^
s2/mutable_s2shape_index.cc:1465:37: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>, absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>>' requested here
 1465 |   cell_map_.insert(cell_map_.end(), std::make_pair(pcell.id(), cell));
      |                                     ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>, std::pair<const S2CellId, S2ShapeIndexCell *> &, std::pair<const S2CellId, S2ShapeIndexCell *> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>, std::pair<const S2CellId, S2ShapeIndexCell *> &, std::pair<const S2CellId, S2ShapeIndexCell *> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/mutable_s2shape_index.cc:18:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>, std::pair<const S2CellId, S2ShapeIndexCell *> &, std::pair<const S2CellId, S2ShapeIndexCell *> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>, std::pair<const S2CellId, S2ShapeIndexCell *> &, std::pair<const S2CellId, S2ShapeIndexCell *> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>, std::pair<const S2CellId, S2ShapeIndexCell *> &, std::pair<const S2CellId, S2ShapeIndexCell *> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2ShapeIndexCell *, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2ShapeIndexCell *>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s1chord_angle.cc:18:
In file included from ../src/s2/s1chord_angle.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s1interval.cc -o s2/s1interval.o
In file included from s2/s1interval.cc:18:
In file included from ../src/s2/s1interval.h:27:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2boolean_operation.cc -o s2/s2boolean_operation.o
43 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builder_graph.cc -o s2/s2builder_graph.o
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<(anonymous namespace)::CrossingGraphEdge>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<(anonymous namespace)::CrossingGraphEdge>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<(anonymous namespace)::CrossingGraphEdge>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_copy_assignable<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_destructible<(anonymous namespace)::CrossingGraphEdge>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<(anonymous namespace)::CrossingGraphEdge>, std::allocator<(anonymous namespace)::CrossingGraphEdge>>, absl::is_trivially_copy_constructible<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_copy_assignable<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_destructible<(anonymous namespace)::CrossingGraphEdge>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:256:3: note: (skipping 3 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  256 |   ~InlinedVector() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/vector:985:23: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>>::destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>, 0>' requested here
  985 |       __alloc_traits::destroy(__alloc(), std::__to_address(--__soon_to_be_end));
      |                       ^
/usr/local/clang19/bin/../include/c++/v1/vector:979:5: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::__base_destruct_at_end' requested here
  979 |     __base_destruct_at_end(this->__begin_);
      |     ^
/usr/local/clang19/bin/../include/c++/v1/vector:530:16: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::__clear' requested here
  530 |         __vec_.__clear();
      |                ^
/usr/local/clang19/bin/../include/c++/v1/vector:541:67: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::__destroy_vector::operator()' requested here
  541 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI ~vector() { __destroy_vector (*this)(); }
      |                                                                   ^
s2/s2boolean_operation.cc:337:35: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::~vector' requested here
  337 |   vector<CrossingGraphEdgeVector> b_edges;
      |                                   ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<(anonymous namespace)::CrossingGraphEdge>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_destructible<(anonymous namespace)::CrossingGraphEdge>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_copy_assignable<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_destructible<(anonymous namespace)::CrossingGraphEdge>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<(anonymous namespace)::CrossingGraphEdge>, std::allocator<(anonymous namespace)::CrossingGraphEdge>>, absl::is_trivially_copy_constructible<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_copy_assignable<(anonymous namespace)::CrossingGraphEdge>, absl::is_trivially_destructible<(anonymous namespace)::CrossingGraphEdge>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:256:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<(anonymous namespace)::CrossingGraphEdge, 2, std::allocator<(anonymous namespace)::CrossingGraphEdge>>::~Storage' requested here
  256 |   ~InlinedVector() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/__memory/allocator.h:168:87: note: (skipping 2 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  168 |   _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_HIDE_FROM_ABI void destroy(pointer __p) { __p->~_Tp(); }
      |                                                                                       ^
/usr/local/clang19/bin/../include/c++/v1/vector:985:23: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>>::destroy<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>, 0>' requested here
  985 |       __alloc_traits::destroy(__alloc(), std::__to_address(--__soon_to_be_end));
      |                       ^
/usr/local/clang19/bin/../include/c++/v1/vector:979:5: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::__base_destruct_at_end' requested here
  979 |     __base_destruct_at_end(this->__begin_);
      |     ^
/usr/local/clang19/bin/../include/c++/v1/vector:530:16: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::__clear' requested here
  530 |         __vec_.__clear();
      |                ^
/usr/local/clang19/bin/../include/c++/v1/vector:541:67: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::__destroy_vector::operator()' requested here
  541 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI ~vector() { __destroy_vector (*this)(); }
      |                                                                   ^
s2/s2boolean_operation.cc:337:35: note: in instantiation of member function 'std::vector<absl::InlinedVector<(anonymous namespace)::CrossingGraphEdge, 2>>::~vector' requested here
  337 |   vector<CrossingGraphEdgeVector> b_edges;
      |                                   ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<int>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
/usr/local/clang19/bin/../include/c++/v1/vector:985:60: note: in instantiation of template class 'gtl::compact_array<int>' requested here
  985 |       __alloc_traits::destroy(__alloc(), std::__to_address(--__soon_to_be_end));
      |                                                            ^
/usr/local/clang19/bin/../include/c++/v1/vector:979:5: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__base_destruct_at_end' requested here
  979 |     __base_destruct_at_end(this->__begin_);
      |     ^
/usr/local/clang19/bin/../include/c++/v1/vector:530:16: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__clear' requested here
  530 |         __vec_.__clear();
      |                ^
/usr/local/clang19/bin/../include/c++/v1/vector:541:67: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__destroy_vector::operator()' requested here
  541 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI ~vector() { __destroy_vector (*this)(); }
      |                                                                   ^
../src/s2/s2builder.h:134:7: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::~vector' requested here
  134 | class S2Builder {
      |       ^
/usr/local/clang19/bin/../include/c++/v1/__memory/unique_ptr.h:292:7: note: in instantiation of member function 'std::default_delete<S2Builder>::operator()' requested here
  292 |       __ptr_.second()(__tmp);
      |       ^
/usr/local/clang19/bin/../include/c++/v1/__memory/unique_ptr.h:261:71: note: in instantiation of member function 'std::unique_ptr<S2Builder>::reset' requested here
  261 |   _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 ~unique_ptr() { reset(); }
      |                                                                       ^
s2/s2boolean_operation.cc:808:12: note: in instantiation of member function 'std::unique_ptr<S2Builder>::~unique_ptr' requested here
  808 |   explicit Impl(S2BooleanOperation* op)
      |            ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>, std::pair<const S2BooleanOperation::SourceId, int> &, std::pair<const S2BooleanOperation::SourceId, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>, std::pair<const S2BooleanOperation::SourceId, int> &, std::pair<const S2BooleanOperation::SourceId, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2boolean_operation.cc:66:
In file included from ../src/s2/s2boolean_operation.h:24:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>, std::pair<const S2BooleanOperation::SourceId, int> &, std::pair<const S2BooleanOperation::SourceId, int> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>, std::pair<const S2BooleanOperation::SourceId, int> &, std::pair<const S2BooleanOperation::SourceId, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>, std::pair<const S2BooleanOperation::SourceId, int> &, std::pair<const S2BooleanOperation::SourceId, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2BooleanOperation::SourceId, int, std::less<S2BooleanOperation::SourceId>, std::allocator<std::pair<const S2BooleanOperation::SourceId, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>, std::pair<const int, int> &, std::pair<const int, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>, std::pair<const int, int> &, std::pair<const int, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builder_graph.cc:18:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>, std::pair<const int, int> &, std::pair<const int, int> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>, std::pair<const int, int> &, std::pair<const int, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>, std::pair<const int, int> &, std::pair<const int, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<int, int, std::less<int>, std::allocator<std::pair<const int, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
44 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builder.cc -o s2/s2builder.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_closed_set_normalizer.cc -o s2/s2builderutil_closed_set_normalizer.o
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
41 warnings generated.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_find_polygon_degeneracies.cc -o s2/s2builderutil_find_polygon_degeneracies.o
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<int>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
s2/s2builder.cc:729:19: note: in instantiation of template class 'gtl::compact_array<int>' requested here
  729 |     auto* sites = &edge_sites_[e];
      |                   ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_inteIn file included from rs2/s2builder.ccn:a70l:
:In file included from :../src/s2/s2builder.hi:s31_:
tIn file included from r../src/s2/mutable_s2shape_index.hi:v34i:
aIn file included from l../src/s2/s2cell_id.hl:y31_:
cIn file included from o../src/s2/r2.hp:y22a:
bIn file included from l../src/s2/util/math/vector.he:<34S:
oIn file included from u../src/absl/utility/utility.hr:c50e:
>In file included from :../src/absl/base/internal/invoke.h::v64a:
l../src/absl/meta/type_traits.hu:e301 :&36&:
       warning: | builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]                                        ^

  301 | ../src/absl/base/casts.h : 163 : 23::  snote: twhile substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]d
::int  e163g | rianll_icnoen sctoannstt<ebxoporl ,D e_s_th absi_tt_rciavsita(lc_odnesstt rSuocutrocre(&T )s o&u&r
c      e| )                                   ^ 
{
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/absl/meta/type_traits.h:  99164: | 27 :  rnote: ein instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested heret
urn    _99_ | b  u i l t i n _ b i t _ c a s t ( D e satb,s ls:o:uirsc_et)r;i
v      i| a  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~l
ly_  d165e | s}t
r      u| c~t
ible<T>::v../src/absl/base/internal/endian.ha:l149u:e39>:  {note: }while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)];

      |                           ^  
149 |   return../src/absl/meta/type_traits.h :b422i:t41_:c anote: sin instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested heret
<int  64224 | _ t > ( F r o m H o sstt6d4:(:biist__lcvaasltu<eu_irnetf6e4r_etn>c(ex<)T)>)>;:
:      t| y                                      ^p
e::type {
      |                                         ^
In file included from ../src/absl/meta/type_traits.hs2/s2builderutil_closed_set_normalizer.cc::23418::
24In file included from :../src/s2/s2builderutil_closed_set_normalizer.h :note: 23in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here:

In file included from ../src/s2/s2builder_graph.h:  28234:
 | In file included from  ../src/s2/s2builder.h : 31 :
:In file included from  ../src/s2/mutable_s2shape_index.hs:t34d:
:In file included from :../src/s2/s2cell_id.hc:o31n:
dIn file included from i../src/s2/r2.ht:i22o:
nIn file included from a../src/s2/util/math/vector.hl:<34T:
:In file included from :../src/absl/utility/utility.hv:a50l:
uIn file included from e../src/absl/base/internal/invoke.h,: 64c:
o../src/absl/meta/type_traits.hn:j560u:n8c:t iwarning: obuiltin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]n
<Ts.  .560. | > ,   T > : :(t_y_phea s{_}t;r
i      v| i                       ^a
l_assig../src/absl/meta/type_traits.hn:(234E:x7t:e nnote: tin instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested heres
Remo  v234e | d )   | |:  !sktIds:C:ocpoynOdriMtoivoenAasls<iTg:n:avballeu)e ,& &c
o      n| j       ^u
nction<Ts...>, T>::type {};
      ../src/absl/meta/type_traits.h| :      ^301
:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std../src/absl/container/internal/inlined_vector.h:::321i:n16t:e gnote: rin instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested herea
l_c  o321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
nstant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocIn file included from as2/s2builderutil_closed_set_normalizer.cct:o18r:
_In file included from t../src/s2/s2builderutil_closed_set_normalizer.hy:p23e:
(In file included from )../src/s2/s2builder_graph.h):)28 :
:In file included from  ../src/s2/s2builder.hs:t31o:
rIn file included from a../src/s2/mutable_s2shape_index.hg:e34_:
(In file included from )../src/s2/s2cell_id.h :{31}:

In file included from       ../src/s2/r2.h| :  ^22
:
In file included from ../src/s2/util/math/vector.h:34:
../src/s2/s2closest_edge_query_base.hIn file included from :../src/absl/utility/utility.h473::5035:
:In file included from  ../src/absl/base/internal/invoke.hnote: :in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here64
:
../src/absl/meta/type_traits.h:559  :4738 | :S 2warning: Cbuiltin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]l
osest  E559d | g e Q u e r y(B_a_shea<sD_itsrtiavnicael>_:c:oSp2yC(lEoxsteesnttEsdRgeemQouveerdy)B a|s|e (!)k
I      s| C                                  ^o
pyOrM../src/s2/s2closest_edge_query.ho:v361e:C28o:n snote: tin instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested herer
uctib  l361e | )i n&l&i
n      e|         ^S
2Clo../src/absl/meta/type_traits.hs:e571s:t39E:d gnote: ein instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested hereQ
uery  :571: | S 2 C l o s e s t E dbgoeoQlu,e rtyy(pceo_ntsrta iSt2sS_hianpteeIrnndaelx:*: iisn_dterxi,v
i      a| l                           ^l
y_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_closed_set_normalizer.cc:18:
In file included from ../src/s2/s2builderutil_closed_set_normalizer.h:23:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>, std::pair<const S2CellId, S2PointIndex<int>::PointData> &, std::pair<const S2CellId, S2PointIndex<int>::PointData> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:140:14: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  140 |     : public node_handle_base<PolicyTraits, Alloc> {
      |              ^
../src/s2/s2point_index.h:226:15: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  226 |   map_.insert(std::make_pair(id, point_data));
      |               ^
../src/s2/s2point_index.h:231:3: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  231 |   Add(PointData(point, data));
      |   ^
s2/s2builder.cc:635:17: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  635 |     site_index->Add(sites_[id], id);
      |                 ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:140:14: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  140 |     : public node_handle_base<PolicyTraits, Alloc> {
      |              ^
../src/s2/s2point_index.h:226:15: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, absl::container_internal::map_params<S2CellId, S2PointIndex<int>::PointData, std::less<S2CellId>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>, 256, true>, std::allocator<std::pair<const S2CellId, S2PointIndex<int>::PointData>>>' requested here
  226 |   map_.insert(std::make_pair(id, point_data));
      |               ^
../src/s2/s2point_index.h:231:3: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  231 |   Add(PointData(point, data));
      |   ^
s2/s2builder.cc:635:17: note: in instantiation of member function 'S2PointIndex<int>::Add' requested here
  635 |     site_index->Add(sites_[id], id);
      |                 ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestPointQueryBase<S2MinDistance, int>::Result>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>, absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of member function 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::Result, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>>::priority_queue' requested here
  398 | S2ClosestPointQueryBase<Distance, Data>::S2ClosestPointQueryBase() {
      |                                          ^
../src/s2/s2closest_point_query.h:362:35: note: in instantiation of member function 'S2ClosestPointQueryBase<S2MinDistance, int>::S2ClosestPointQueryBase' requested here
  362 | inline S2ClosestPointQuery<Data>::S2ClosestPointQuery(const Index* index,
      |                                   ^
s2/s2builder.cc:644:31: note: in instantiation of member function 'S2ClosestPointQuery<int>::S2ClosestPointQuery' requested here
  644 |   S2ClosestPointQuery<SiteId> site_query(site_index, options);
      |                               ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>, absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::Result>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::Result>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of member function 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::Result, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::Result, 16>>::priority_queue' requested here
  398 | S2ClosestPointQueryBase<Distance, Data>::S2ClosestPointQueryBase() {
      |                                          ^
../src/s2/s2closest_point_query.h:362:35: note: in instantiation of member function 'S2ClosestPointQueryBase<S2MinDistance, int>::S2ClosestPointQueryBase' requested here
  362 | inline S2ClosestPointQuery<Data>::S2ClosestPointQuery(const Index* index,
      |                                   ^
s2/s2builder.cc:644:31: note: in instantiation of member function 'S2ClosestPointQuery<int>::S2ClosestPointQuery' requested here
  644 |   S2ClosestPointQuery<SiteId> site_query(site_index, options);
      |                               ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of member function 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>>::priority_queue' requested here
  398 | S2ClosestPointQueryBase<Distance, Data>::S2ClosestPointQueryBase() {
      |                                          ^
../src/s2/s2closest_point_query.h:362:35: note: in instantiation of member function 'S2ClosestPointQueryBase<S2MinDistance, int>::S2ClosestPointQueryBase' requested here
  362 | inline S2ClosestPointQuery<Data>::S2ClosestPointQuery(const Index* index,
      |                                   ^
s2/s2builder.cc:644:31: note: in instantiation of member function 'S2ClosestPointQuery<int>::S2ClosestPointQuery' requested here
  644 |   S2ClosestPointQuery<SiteId> site_query(site_index, options);
      |                               ^
In file included from s2/s2builder.cc:70:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>, absl::is_trivially_destructible<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16, std::allocator<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_point_query_base.h:398:42: note: in instantiation of member function 'std::priority_queue<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, absl::InlinedVector<S2ClosestPointQueryBase<S2MinDistance, int>::QueueEntry, 16>>::priority_queue' requested here
  398 | S2ClosestPointQueryBase<Distance, Data>::S2ClosestPointQueryBase() {
      |                                          ^
../src/s2/s2closest_point_query.h:362:35: note: in instantiation of member function 'S2ClosestPointQueryBase<S2MinDistance, int>::S2ClosestPointQueryBase' requested here
  362 | inline S2ClosestPointQuery<Data>::S2ClosestPointQuery(const Index* index,
      |                                   ^
s2/s2builder.cc:644:31: note: in instantiation of member function 'S2ClosestPointQuery<int>::S2ClosestPointQuery' requested here
  644 |   S2ClosestPointQuery<SiteId> site_query(site_index, options);
      |                               ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_lax_polygon_layer.cc -o s2/s2builderutil_lax_polygon_layer.o
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_s2point_vector_layer.cc -o s2/s2builderutil_s2point_vector_layer.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builderutil_find_polygon_degeneracies.cc:18:
In file included from ../src/s2/s2builderutil_find_polygon_degeneracies.h:24:
In file included from ../src/s2/s2builder_graph.h:28:
In file included from ../src/s2/s2builder.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_s2polygon_layer.cc -o s2/s2builderutil_s2polygon_layer.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_lax_polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_lax_polygon_layer.h:38:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2point_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2point_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
41 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_s2polyline_layer.cc -o s2/s2builderutil_s2polyline_layer.o
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_s2polyline_vector_layer.cc -o s2/s2builderutil_s2polyline_vector_layer.o
38 warnings generated.
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>, std::pair<S2Loop *const, std::pair<int, bool>> &, std::pair<S2Loop *const, std::pair<int, bool>> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>, std::pair<S2Loop *const, std::pair<int, bool>> &, std::pair<S2Loop *const, std::pair<int, bool>> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2builderutil_s2polygon_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polygon_layer.h:39:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>, std::pair<S2Loop *const, std::pair<int, bool>> &, std::pair<S2Loop *const, std::pair<int, bool>> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>, std::pair<S2Loop *const, std::pair<int, bool>> &, std::pair<S2Loop *const, std::pair<int, bool>> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>, std::pair<S2Loop *const, std::pair<int, bool>> &, std::pair<S2Loop *const, std::pair<int, bool>> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Loop *, std::pair<int, bool>, std::less<S2Loop *>, std::allocator<std::pair<S2Loop *const, std::pair<int, bool>>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
62 warnings generated.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
41 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_snap_functions.cc -o s2/s2builderutil_snap_functions.o
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polyline_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_s2polyline_vector_layer.cc:18:
In file included from ../src/s2/s2builderutil_s2polyline_vector_layer.h:24:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2builderutil_testing.cc -o s2/s2builderutil_testing.o
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, tyIn file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
pe_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_snap_functions.cc:18:
In file included from ../src/s2/s2builderutil_snap_functions.h:22:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2cap.cc -o s2/s2cap.o
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2cell_id.cc -o s2/s2cell_id.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2cell_index.cc -o s2/s2cell_index.o
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2builderutil_testing.cc:18:
In file included from ../src/s2/s2builderutil_testing.h:23:
In file included from ../src/absl/memory/memory.h:34:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2cell_union.cc -o s2/s2cell_union.o
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2cap.cc:18:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2cell_id.cc:18:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2cell.cc -o s2/s2cell.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2cell_index.cc:18:
In file included from ../src/s2/s2cell_index.h:24:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
34 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2centroids.cc -o s2/s2centroids.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2cell_union.cc:18:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2closest_cell_query.cc -o s2/s2closest_cell_query.o
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2closest_edge_query.cc -o s2/s2closest_edge_query.o
In file included from s2/s2centroids.cc:18:
In file included from ../src/s2/s2centroids.h:50:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2closest_point_query.cc -o s2/s2closest_point_query.o
5 warnings generated.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2cell.cc:18:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2contains_vertex_query.cc -o s2/s2contains_vertex_query.o
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of member function 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  443 | S2ClosestCellQueryBase<Distance>::S2ClosestCellQueryBase()
      |                                   ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of member function 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  443 | S2ClosestCellQueryBase<Distance>::S2ClosestCellQueryBase()
      |                                   ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_cell_query_base.h:780:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  780 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_cell_query_base.h:584:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::MaybeAddResult' requested here
  584 |     MaybeAddResult(it.cell_id(), it.label());
      |     ^
../src/s2/s2closest_cell_query_base.h:572:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsBruteForce' requested here
  572 |     FindClosestCellsBruteForce();
      |     ^
../src/s2/s2closest_cell_query_base.h:499:3: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsInternal' requested here
  499 |   FindClosestCellsInternal(target, options);
      |   ^
../src/s2/s2closest_cell_query.h:370:9: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCells' requested here
  370 |   base_.FindClosestCells(target, options_, results);
      |         ^
In file included from s2/s2closest_cell_query.cc:18:
In file included from ../src/s2/s2closest_cell_query.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_cell_query_base.h:780:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  780 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_cell_query_base.h:584:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::MaybeAddResult' requested here
  584 |     MaybeAddResult(it.cell_id(), it.label());
      |     ^
../src/s2/s2closest_cell_query_base.h:572:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsBruteForce' requested here
  572 |     FindClosestCellsBruteForce();
      |     ^
../src/s2/s2closest_cell_query_base.h:499:3: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsInternal' requested here
  499 |   FindClosestCellsInternal(target, options);
      |   ^
../src/s2/s2closest_cell_query.h:370:9: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCells' requested here
  370 |   base_.FindClosestCells(target, options_, results);
      |         ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2closest_point_query.cc:18:
In file included from ../src/s2/s2closest_point_query.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2contains_vertex_query.cc:18:
In file included from ../src/s2/s2contains_vertex_query.h:21:
In file included from ../src/absl/container/btree_map.h:53:
In file included from ../src/absl/container/internal/btree.h:63:
In file included from ../src/absl/container/internal/common.h:21:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
28 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2convex_hull_query.cc -o s2/s2convex_hull_query.o
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2coords.cc -o s2/s2coords.o
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2closest_edge_query.cc:18:
In file included from ../src/s2/s2closest_edge_query.h:28:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
45 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2crossing_edge_query.cc -o s2/s2crossing_edge_query.o
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2coords.cc:18:
In file included from ../src/s2/s2coords.h:105:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2debug.cc -o s2/s2debug.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2earth.cc -o s2/s2earth.o
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from In file included from s2/s2crossing_edge_query.cc../src/s2/s2cap.h::1828:
:
In file included from In file included from ../src/s2/s2crossing_edge_query.h../src/s2/s1angle.h::2528:
:
In file included from In file included from ../src/absl/container/inlined_vector.h../src/s2/s2point.h::5322:
:
In file included from In file included from ../src/absl/container/internal/inlined_vector.h../src/s2/util/math/vector.h::3034:
:
In file included from In file included from ../src/absl/container/internal/compressed_tuple.h../src/absl/utility/utility.h::4050:
:
In file included from In file included from ../src/absl/utility/utility.h../src/absl/base/internal/invoke.h::5064:
:
In file included from ../src/absl/meta/type_traits.h../src/absl/base/internal/invoke.h::30164::
36../src/absl/meta/type_traits.h:: 560warning: :builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]8
: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  301 |    560  |     :   s t d(:_:_ihnatse_gtrrailv_icaoln_satsasnitg<nb(oEoxlt,e n_t_shRaesm_otvreidv)i a|l|_ d!eksItsrCuocptyoOrr(MTo)v e&A&s
s      i| g                                   ^n
able)../src/absl/meta/type_traits.h :&99&:
27      :|         ^note: 
in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivial../src/absl/meta/type_traits.hl:y301_:d36e:s twarning: rbuiltin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]u
cti  b301l | e < T > ::: vsatldu:e:>i n{t}e;g
r      a| l                          ^_
con../src/absl/meta/type_traits.hs:t422a:n41t:< bnote: oin instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested hereo
l,   _422_ | h a s _ t r i v i a ls_tdde:s:tirsu_cltvoarl(uTe)_ r&e&f
e      r| e                                   ^n
ce<../src/absl/meta/type_traits.hT:>562>::7::t ynote: pin instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested heree
::t  y562p | e   { 
        |                                          ^i
s_tr../src/absl/types/internal/optional.hi:v182i:a31l:l ynote: _in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested hered
est  r182u | c t i b l e < E x t ebnotoslR eumnouvseedd> :=: vaablsule: :&i&s
_      t| r      ^i
via../src/absl/meta/type_traits.hl:l571y:_39c:o pnote: yin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here_
cons  t571r | u c t i b l e < T > :b:ovoall,u et&y&p
e      _| t                              ^r
aits_internal::is../src/absl/types/optional.h_:t119r:i45v:i anote: lin instantiation of default argument for 'optional_data<absl::string_view>' required herel
y_co  p119y | acbllaes_si mopplt<iTo>n:a:lk V:a lpurei>v a{t}e; 
o      p| t                                      ^i
onal_../src/absl/base/casts.hi:n156t:e41r:n anote: lin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here:
:op  t156i | o n a l _ d a t           type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(abasl<:T:>b,i
t      _| c                                            ^~~~~~~~~~~~~~~~a
st<uint32>(v));
      |                                    ^
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2convex_hull_query.cc:26:
In file included from ../src/s2/s2convex_hull_query.h:25:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2edge_clipping.cc -o s2/s2edge_clipping.o
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2::FaceSegment>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2::FaceSegment>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2::FaceSegment>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2::FaceSegment>, absl::is_trivially_copy_assignable<S2::FaceSegment>, absl::is_trivially_destructible<S2::FaceSegment>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2::FaceSegment>, std::allocator<S2::FaceSegment>>, absl::is_trivially_copy_constructible<S2::FaceSegment>, absl::is_trivially_copy_assignable<S2::FaceSegment>, absl::is_trivially_destructible<S2::FaceSegment>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2::FaceSegment, 6, std::allocator<S2::FaceSegment>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
s2/s2crossing_edge_query.cc:202:25: note: in instantiation of member function 'absl::InlinedVector<S2::FaceSegment, 6>::InlinedVector' requested here
  202 |   S2::FaceSegmentVector segments;
      |                         ^
In file included from s2/s2crossing_edge_query.cc:18:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2::FaceSegment>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2::FaceSegment>, absl::is_trivially_destructible<S2::FaceSegment>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2::FaceSegment>, absl::is_trivially_copy_assignable<S2::FaceSegment>, absl::is_trivially_destructible<S2::FaceSegment>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2::FaceSegment>, std::allocator<S2::FaceSegment>>, absl::is_trivially_copy_constructible<S2::FaceSegment>, absl::is_trivially_copy_assignable<S2::FaceSegment>, absl::is_trivially_destructible<S2::FaceSegment>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2::FaceSegment, 6, std::allocator<S2::FaceSegment>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
s2/s2crossing_edge_query.cc:202:25: note: in instantiation of member function 'absl::InlinedVector<S2::FaceSegment, 6>::InlinedVector' requested here
  202 |   S2::FaceSegmentVector segments;
      |                         ^
In file included from s2/s2earth.cc:16:
In file included from ../src/s2/s2earth.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2edge_crosser.cc -o s2/s2edge_crosser.o
5 warnings generated.
In file included from s2/s2edge_clipping.cc:18:
In file included from ../src/s2/s2edge_clipping.h:34:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2edge_crossings.cc -o s2/s2edge_crossings.o
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/container/internal/inlined_vector.h:97:33: note: in instantiation of template class 'absl::is_trivially_destructible<S2::FaceSegment>' requested here
   97 |                           absl::is_trivially_destructible<ValueType<A>>::value>
      |                                 ^
../src/absl/container/inlined_vector.h:735:30: note: in instantiation of default argument for 'DestroyAdapter<std::allocator<S2::FaceSegment>>' required here
  735 |     inlined_vector_internal::DestroyAdapter<A>::DestroyElements(
      |                              ^~~~~~~~~~~~~~~~~
s2/s2edge_clipping.cc:214:13: note: in instantiation of member function 'absl::InlinedVector<S2::FaceSegment, 6>::clear' requested here
  214 |   segments->clear();
      |             ^
6 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2edge_distances.cc -o s2/s2edge_distances.o
In file included from s2/s2edge_crosser.cc:18:
In file included from ../src/s2/s2edge_crosser.h:23:
In file included from ../src/s2/s2edge_crossings.h:36:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2edge_tessellator.cc -o s2/s2edge_tessellator.o
In file included from s2/s2edge_crossings.cc:18:
In file included from ../src/s2/s2edge_crossings.h:36:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2edge_distances.cc:18:
In file included from ../src/s2/s2edge_distances.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2error.cc -o s2/s2error.o
In file included from s2/s2edge_tessellator.cc:18:
In file included from ../src/s2/s2edge_tessellator.h:22:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2furthest_edge_query.cc -o s2/s2furthest_edge_query.o
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
In file included from s2/s2furthest_edge_query.cc:16:
In file included from ../src/s2/s2furthest_edge_query.h:26:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query_base.h:515:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
  515 |   FindClosestEdges(target, options, &results);
      |   ^
s2/s2furthest_edge_query.cc:75:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::FindClosestEdges' requested here
   75 |   for (auto result : base_.FindClosestEdges(target, options_)) {
      |                            ^
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2latlng_rect_bounder.cc -o s2/s2latlng_rect_bounder.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2latlng_rect.cc -o s2/s2latlng_rect.o
In file included from s2/s2latlng_rect_bounder.cc:18:
In file included from ../src/s2/s2latlng_rect_bounder.h:21:
In file included from ../src/s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2latlng.cc -o s2/s2latlng.o
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2latlng.cc:18:
In file included from ../src/s2/s2latlng.h:28:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2latlng_rect.cc:18:
In file included from ../src/s2/s2latlng_rect.h:27:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2lax_loop_shape.cc -o s2/s2lax_loop_shape.o
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2lax_loop_shape.cc:18:
In file included from ../src/s2/s2lax_loop_shape.h:39:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2lax_polygon_shape.cc -o s2/s2lax_polygon_shape.o
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2lax_polygon_shape.cc:18:
In file included from ../src/s2/s2lax_polygon_shape.h:24:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2lax_polyline_shape.cc -o s2/s2lax_polyline_shape.o
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2lax_polyline_shape.cc:18:
In file included from ../src/s2/s2lax_polyline_shape.h:23:
In file included from ../src/s2/encoded_s2point_vector.h:22:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2loop_measures.cc -o s2/s2loop_measures.o
In file included from s2/s2loop_measures.cc:18:
In file included from ../src/s2/s2loop_measures.h:33:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2loop.cc -o s2/s2loop.o
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<int>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<int>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<int>, absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<int>, std::allocator<int>>, absl::is_trivially_copy_constructible<int>, absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<int, 4, std::allocator<int>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
s2/s2loop_measures.cc:282:31: note: in instantiation of member function 'absl::InlinedVector<int, 4>::InlinedVector' requested here
  282 |   absl::InlinedVector<int, 4> min_indices;
      |                               ^
In file included from s2/s2loop_measures.cc:18:
In file included from ../src/s2/s2loop_measures.h:33:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<int>, absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<int>, std::allocator<int>>, absl::is_trivially_copy_constructible<int>, absl::is_trivially_copy_assignable<int>, absl::is_trivially_destructible<int>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<int, 4, std::allocator<int>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
s2/s2loop_measures.cc:282:31: note: in instantiation of member function 'absl::InlinedVector<int, 4>::InlinedVector' requested here
  282 |   absl::InlinedVector<int, 4> min_indices;
      |                               ^
7 warnings generated.
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2loop.cc:18:
In file included from ../src/s2/s2loop.h:31:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2max_distance_targets.cc -o s2/s2max_distance_targets.o
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MaxDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
In file included from s2/s2max_distance_targets.cc:16:
In file included from ../src/s2/s2max_distance_targets.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MaxDistance>::Result &, S2ClosestEdgeQueryBase<S2MaxDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MaxDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MaxDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2furthest_edge_query.h:396:29: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MaxDistance>::S2ClosestEdgeQueryBase' requested here
  396 | inline S2FurthestEdgeQuery::S2FurthestEdgeQuery(const S2ShapeIndex* index,
      |                             ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2measures.cc -o s2/s2measures.o
47 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2metrics.cc -o s2/s2metrics.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2min_distance_targets.cc -o s2/s2min_distance_targets.o
In file included from s2/s2measures.cc:18:
In file included from ../src/s2/s2measures.h:24:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2metrics.cc:31:
In file included from ../src/s2/s2metrics.h:34:
In file included from ../src/s2/s2coords.h:105:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2padded_cell.cc -o s2/s2padded_cell.o
5 warnings generated.
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of member function 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  443 | S2ClosestCellQueryBase<Distance>::S2ClosestCellQueryBase()
      |                                   ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_cell_query_base.h:443:35: note: in instantiation of member function 'std::priority_queue<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestCellQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  443 | S2ClosestCellQueryBase<Distance>::S2ClosestCellQueryBase()
      |                                   ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestCellQueryBase<S2MinDistance>::Result &, S2ClosestCellQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_cell_query.h:336:28: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::S2ClosestCellQueryBase' requested here
  336 | inline S2ClosestCellQuery::S2ClosestCellQuery(const S2CellIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_cell_query_base.h:780:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  780 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_cell_query_base.h:584:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::MaybeAddResult' requested here
  584 |     MaybeAddResult(it.cell_id(), it.label());
      |     ^
../src/s2/s2closest_cell_query_base.h:572:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsBruteForce' requested here
  572 |     FindClosestCellsBruteForce();
      |     ^
../src/s2/s2closest_cell_query_base.h:499:3: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsInternal' requested here
  499 |   FindClosestCellsInternal(target, options);
      |   ^
../src/s2/s2closest_cell_query.h:370:9: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCells' requested here
  370 |   base_.FindClosestCells(target, options_, results);
      |         ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_cell_query_base.h:780:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestCellQueryBase<S2MinDistance>::Result, std::less<S2ClosestCellQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestCellQueryBase<S2MinDistance>::Result>>' requested here
  780 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_cell_query_base.h:584:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::MaybeAddResult' requested here
  584 |     MaybeAddResult(it.cell_id(), it.label());
      |     ^
../src/s2/s2closest_cell_query_base.h:572:5: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsBruteForce' requested here
  572 |     FindClosestCellsBruteForce();
      |     ^
../src/s2/s2closest_cell_query_base.h:499:3: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCellsInternal' requested here
  499 |   FindClosestCellsInternal(target, options);
      |   ^
../src/s2/s2closest_cell_query.h:370:9: note: in instantiation of member function 'S2ClosestCellQueryBase<S2MinDistance>::FindClosestCells' requested here
  370 |   base_.FindClosestCells(target, options_, results);
      |         ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2padded_cell.cc:18:
In file included from ../src/s2/s2padded_cell.h:22:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2min_distance_targets.cc:18:
In file included from ../src/s2/s2min_distance_targets.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2point_compression.cc -o s2/s2point_compression.o
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<std::pair<int, int>>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/s2point_compression.cc:320:36: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::FixedArray' requested here
  320 |   absl::FixedArray<pair<int, int>> vertices_pi_qi(points.size());
      |                                    ^
In file included from s2/s2point_compression.cc:17:
In file included from ../src/s2/s2point_compression.h:49:
In file included from ../src/absl/types/span.h:67:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:352:36: note: in instantiation of template class 'absl::is_trivially_destructible<std::pair<int, int>>' requested here
  352 |                                    is_trivially_destructible<T>::value> {
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<std::pair<int, int>>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/s2point_compression.cc:320:36: note: in instantiation of member function 'absl::FixedArray<std::pair<int, int>>::FixedArray' requested here
  320 |   absl::FixedArray<pair<int, int>> vertices_pi_qi(points.size());
      |                                    ^
s2/s2point_compression.cc:169:12: warning: unused function 'STtoPiQi' [-Wunused-function]
  169 | inline int STtoPiQi(double s, int level) {
      |            ^~~~~~~~
59 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2point_region.cc -o s2/s2point_region.o
22 warnings generated.
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2point_region.cc:18:
In file included from ../src/s2/s2point_region.h:23:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2pointutil.cc -o s2/s2pointutil.o
In file included from s2/s2pointutil.cc:18:
In file included from ../src/s2/s2pointutil.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2polygon.cc -o s2/s2polygon.o
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<S2XYZFaceSiTi>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<S2XYZFaceSiTi>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/s2polygon.cc:666:35: note: in instantiation of member function 'absl::FixedArray<S2XYZFaceSiTi>::FixedArray' requested here
  666 |   absl::FixedArray<S2XYZFaceSiTi> all_vertices(num_vertices_);
      |                                   ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:352:36: note: in instantiation of template class 'absl::is_trivially_destructible<S2XYZFaceSiTi>' requested here
  352 |                                    is_trivially_destructible<T>::value> {
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<S2XYZFaceSiTi>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<S2XYZFaceSiTi>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/s2polygon.cc:666:35: note: in instantiation of member function 'absl::FixedArray<S2XYZFaceSiTi>::FixedArray' requested here
  666 |   absl::FixedArray<S2XYZFaceSiTi> all_vertices(num_vertices_);
      |                                   ^
In file included from s2/s2polygon.cc:18:
In file included from ../src/s2/s2polygon.h:29:
In file included from ../src/s2/mutable_s2shape_index.h:34:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<int>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
/usr/local/clang19/bin/../include/c++/v1/vector:985:60: note: in instantiation of template class 'gtl::compact_array<int>' requested here
  985 |       __alloc_traits::destroy(__alloc(), std::__to_address(--__soon_to_be_end));
      |                                                            ^
/usr/local/clang19/bin/../include/c++/v1/vector:979:5: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__base_destruct_at_end' requested here
  979 |     __base_destruct_at_end(this->__begin_);
      |     ^
/usr/local/clang19/bin/../include/c++/v1/vector:530:16: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__clear' requested here
  530 |         __vec_.__clear();
      |                ^
/usr/local/clang19/bin/../include/c++/v1/vector:541:67: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::__destroy_vector::operator()' requested here
  541 |   _LIBCPP_CONSTEXPR_SINCE_CXX20 _LIBCPP_HIDE_FROM_ABI ~vector() { __destroy_vector (*this)(); }
      |                                                                   ^
../src/s2/s2builder.h:134:7: note: in instantiation of member function 'std::vector<gtl::compact_array<int>>::~vector' requested here
  134 | class S2Builder {
      |       ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2polyline_alignment.cc -o s2/s2polyline_alignment.o
In file included from s2/s2polyline_alignment.cc:17:
In file included from ../src/s2/s2polyline_alignment.h:23:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
55 warnings generated.
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2polyline_measures.cc -o s2/s2polyline_measures.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2polyline_simplifier.cc -o s2/s2polyline_simplifier.o
In file included from s2/s2polyline_measures.cc:18:
In file included from ../src/s2/s2polyline_measures.h:29:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
In file included from s2/s2polyline_simplifier.cc:18:
In file included from ../src/s2/s2polyline_simplifier.h:61:
In file included from ../src/s2/s1chord_angle.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2polyline.cc -o s2/s2polyline.o
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2polyline.cc:18:
In file included from ../src/s2/s2polyline.h:26:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2predicates.cc -o s2/s2predicates.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2projections.cc -o s2/s2projections.o
In file included from s2/s2predicates.cc:18:
In file included from ../src/s2/s2predicates.h:38:
In file included from ../src/s2/s1chord_angle.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2projections.cc:18:
In file included from ../src/s2/s2projections.h:25:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2r2rect.cc -o s2/s2r2rect.o
5 warnings generated.
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2r2rect.cc:18:
In file included from ../src/s2/s2r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2region_coverer.cc -o s2/s2region_coverer.o
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2region_intersection.cc -o s2/s2region_intersection.o
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2region_term_indexer.cc -o s2/s2region_term_indexer.o
In file included from s2/s2region_intersection.cc:17:
In file included from ../src/s2/s2region_intersection.h:25:
In file included from ../src/s2/s2region.h:24:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2region_union.cc -o s2/s2region_union.o
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2region_coverer.cc:18:
In file included from ../src/s2/s2region_coverer.h:29:
In file included from ../src/s2/s2cell.h:24:
In file included from ../src/s2/r2rect.h:25:
In file included from ../src/s2/r1interval.h:28:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2region_term_indexer.cc:75:
In file included from ../src/s2/s2region_term_indexer.h:103:
In file included from ../src/s2/s2cell_union.h:27:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2region_union.cc:18:
In file included from ../src/s2/s2region_union.h:26:
In file included from ../src/s2/s2region.h:24:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2region.cc -o s2/s2region.o
34 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shape_index_buffered_region.cc -o s2/s2shape_index_buffered_region.o
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shape_index_measures.cc -o s2/s2shape_index_measures.o
In file included from s2/s2region.cc:18:
In file included from ../src/s2/s2region.h:24:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shape_index.cc -o s2/s2shape_index.o
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from In file included from ../src/absl/meta/type_traits.hs2/s2shape_index.cc:18::
559In file included from :../src/s2/s2shape_index.h8::38 :
warning: In file included from builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]../src/s2/s2cell_id.h
:31:
In file included from ../src/s2/r2.h:22  :
559In file included from  | ../src/s2/util/math/vector.h : 34 :
 In file included from  ../src/absl/utility/utility.h :(50_:
_In file included from h../src/absl/base/internal/invoke.ha:s64_:
t../src/absl/meta/type_traits.hr:i301v:i36a:l _warning: cbuiltin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]o
py(ExtentsRem  o301v | e d )   |:|  s!tkdI:s:CionptyeOgrrMaolv_ecCoonnssttarnutc<tbiobolle,)  _&_&h
a      s| _       ^t
rivial_dest../src/absl/meta/type_traits.hr:u571c:t39o:r (note: Tin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here)
 &&  
571       | |                                     ^ 
        bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inl../src/absl/meta/type_traits.hi:n350e: 36c:o nwarning: sbuiltin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]t
expr   350D | e s t   b:i ts_tcda:s:ti(nctoengsrta lS_ocuorncset&a nsto<ubrocoel),  {_
_      h| a                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~s
_tr  i164v | i a lr_ectounrsnt r_u_cbtuoirl(tTi)n _&b&i
t      _| c                                   ^a
st(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivi../src/absl/meta/type_traits.ha:l494l:y17_:c owarning: pbuiltin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]y
able<  S494o | u r c e > : : v a l ubeo o&l&,
       _| _                                        ^h
as_../src/absl/base/casts.ht:r163i:v23i:a lnote: _while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]as2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^

  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
ssign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shape_index_measures.cc:18:
In file included from ../src/s2/s2shape_index_measures.h:25:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
21 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shape_measures.cc -o s2/s2shape_measures.o
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<int>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<int>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<int>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<int>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<int>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<int>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:573:46: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>, std::allocator<int>>' requested here
  573 |           shape_ids.insert(containing_shape->id());
      |                                              ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<const S2ShapeIndexCell *>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<const S2ShapeIndexCell *>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<const S2ShapeIndexCell *>, std::allocator<const S2ShapeIndexCell *>>, absl::is_trivially_copy_constructible<const S2ShapeIndexCell *>, absl::is_trivially_copy_assignable<const S2ShapeIndexCell *>, absl::is_trivially_destructible<const S2ShapeIndexCell *>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<const S2ShapeIndexCell *, 6, std::allocator<const S2ShapeIndexCell *>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'absl::InlinedVector<const S2ShapeIndexCell *, 6>::InlinedVector' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<TIn file included from >s2/s2shape_index_buffered_region.cc:::18k:
VIn file included from a../src/s2/s2shape_index_buffered_region.hl:u22e:
>In file included from  ../src/s2/s2cap.h{:}28;:

In file included from       ../src/s2/s1angle.h| :                                      ^28
:
In file included from ../src/s2/s2point.h../src/absl/base/casts.h::22156:
:In file included from 41../src/s2/util/math/vector.h:: 34note: :
in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested hereIn file included from 
../src/absl/utility/utility.h:50:
  In file included from 156../src/absl/base/internal/invoke.h | : 64 :
 ../src/absl/meta/type_traits.h : 301 : 36 :   warning:  builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins] 
        301t | y p e _ t:r asittds:_:iinntteergnraall:_:ciosn_sttrainvti<abloloyl_,c o_p_yhaabsl_et<rDievsita>l:_:dveasltureu
c      t| o                                        ^r
(T) &../src/absl/base/casts.h&:
163      :| 23                                   ^:
 note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
../src/absl/meta/type_traits.h:99:  27163: |  inote: nin instantiation of template class 'absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested herel
ine    c99o | n s t e x p r   D e s t   b i t _ c a s ta(bcsoln:s:ti sS_oturricvei&a lsloyu_rdcees)t r{u
c      t| i                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~b
le  <164T | > : :rveatluuren>  _{_}b;u
i      l| t                          ^i
n_bi../src/absl/meta/type_traits.ht:_422c:a41s:t (note: Din instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested heree
st,   422s | o u r c e ) ; 
        |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~s
t  d165: | :}i
s      _| l~v
alue_../src/s2/util/endian/endian.hr:e645f:e36r:e nnote: cwhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]e
<T>  >645: | : t y p er:e:ttuyrpne  E{n
d      i| a                                        ^n
Clas../src/absl/meta/type_traits.hs::234::F24r:o mnote: Hin instantiation of template class 'absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested hereo
st3  2234( | a b s l ::: bsittd_:c:acsotn<duiitnito3n2a>l(<vT):):;v
a      l| u                                   ^e
, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>, absl::is_trivially_copy_constructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_copy_assignable<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>, absl::is_trivially_destructible<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
/usr/local/clang19/bin/../include/c++/v1/queue:531:9: note: in instantiation of member function 'absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>::InlinedVector' requested here
  531 |       : c(), comp() {}
      |         ^
../src/s2/s2closest_edge_query_base.h:473:35: note: in instantiation of member function 'std::priority_queue<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, absl::InlinedVector<S2ClosestEdgeQueryBase<S2MinDistance>::QueueEntry, 16>>::priority_queue' requested here
  473 | S2ClosestEdgeQueryBase<Distance>::S2ClosestEdgeQueryBase()
      |                                   ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2CloIn file included from ss2/s2shape_index.cce:s18t:
EIn file included from d../src/s2/s2shape_index.hg:e38Q:
uIn file included from e../src/s2/s2cell_id.hr:y31(:
cIn file included from o../src/s2/r2.hn:s22t:
 In file included from S../src/s2/util/math/vector.h2:S34h:
aIn file included from p../src/absl/utility/utility.he:I50n:
dIn file included from e../src/absl/base/internal/invoke.hx:*64 :
i../src/absl/meta/type_traits.hn:d559e:x8,:
       warning: | builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]                           ^

  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query.h:361:28: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here
  361 | inline S2ClosestEdgeQuery::S2ClosestEdgeQuery(const S2ShapeIndex* index,
      |                            ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>, S2ClosestEdgeQueryBase<S2MinDistance>::Result &, S2ClosestEdgeQueryBase<S2MinDistance>::Result *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
In file included from s2/s2shape_index.cc../src/absl/container/internal/btree_container.h::1837:
:In file included from 7../src/s2/s2shape_index.h:: 38note: :
in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>>::~btree' requested hereIn file included from 
../src/s2/s2cell_id.h:   3137:
 | In file included from c../src/s2/r2.hl:a22s:
sIn file included from  ../src/s2/util/math/vector.hb:t34r:
eIn file included from e../src/absl/utility/utility.h_:c50o:
nIn file included from t../src/absl/base/internal/invoke.ha:i64n:
e../src/absl/meta/type_traits.hr: 559{:
8      :|        ^warning: 
builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
../src/s2/s2closest_edge_query.h:361:  28559: |   note:  in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested here 
     (361_ | _ihnalsi_nter iSv2iCallo_sceosptyE(dEgxetQeunetrsyR:e:mSo2vCeldo)s e|s|t E!dkgIesQCuoepryyO(rcMoonvsetC oSn2sSthraupcetIinbdleex)*  &i&n
d      e| x       ^,

      |                            ^../src/absl/meta/type_traits.h
:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>, int &, int *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::set_params<int, std::less<int>, std::allocator<int>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2shape_index_buffered_region.cc:18:
In file included from ../src/s2/s2shape_index_buffered_region.h:22:
In file included from ../src/s2/s2cap.h:28:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/container/internal/common.h:113:34: note: in instantiation of template class 'absl::optional<std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  113 |   absl::optional<allocator_type> alloc_ = {};
      |                                  ^
../src/absl/container/internal/common.h:120:28: note: in instantiation of template class 'absl::container_internal::node_handle_base<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  120 | class node_handle : public node_handle_base<PolicyTraits, Alloc> {
      |                            ^
../src/s2/s2closest_edge_query_base.h:867:24: note: in instantiation of template class 'absl::container_internal::node_handle<absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, absl::container_internal::set_params<S2ClosestEdgeQueryBase<S2MinDistance>::Result, std::less<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>, 256, false>, std::allocator<S2ClosestEdgeQueryBase<S2MinDistance>::Result>>' requested here
  867 |     result_set_.insert(result);
      |                        ^
../src/s2/s2closest_edge_query_base.h:577:7: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::AddResult' requested here
  577 |       AddResult(Result(Distance::Zero(), shape_id, -1));
      |       ^
../src/s2/s2closest_edge_query_base.h:532:3: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdgesInternal' requested here
  532 |   FindClosestEdgesInternal(target, options);
      |   ^
../src/s2/s2closest_edge_query.h:395:9: note: in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::FindClosestEdges' requested here
  395 |   base_.FindClosestEdges(target, options_, results);
      |         ^
In file included from s2/s2shape_index.cc:18:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/s2/util/gtl/compact_array.h:351:16: note: in instantiation of template class 'absl::is_trivially_default_constructible<S2ClippedShape>' requested here
  351 |         !absl::is_trivially_default_constructible<value_type>::value) {
      |                ^
s2/s2shape_index.cc:53:11: note: in instantiation of member function 'gtl::compact_array_base<S2ClippedShape>::resize' requested here
   53 |   shapes_.resize(size + n);
      |           ^
In file included from s2/s2shape_measures.cc:18:
In file included from ../src/s2/s2shape_measures.h:27:
In file included from ../src/s2/s1angle.h:28:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
22 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shapeutil_build_polygon_boundaries.cc -o s2/s2shapeutil_build_polygon_boundaries.o
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shapeutil_coding.cc -o s2/s2shapeutil_coding.o
52 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shapeutil_contains_brute_force.cc -o s2/s2shapeutil_contains_brute_force.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shapeutil_edge_iterator.cc -o s2/s2shapeutil_edge_iterator.o
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>, std::pair<S2Shape *const, std::vector<S2Shape *>> &, std::pair<S2Shape *const, std::vector<S2Shape *>> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>, std::pair<S2Shape *const, std::vector<S2Shape *>> &, std::pair<S2Shape *const, std::vector<S2Shape *>> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2shapeutil_build_polygon_boundaries.cc:18:
In file included from ../src/s2/s2shapeutil_build_polygon_boundaries.h:23:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>, std::pair<S2Shape *const, std::vector<S2Shape *>> &, std::pair<S2Shape *const, std::vector<S2Shape *>> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>, std::pair<S2Shape *const, std::vector<S2Shape *>> &, std::pair<S2Shape *const, std::vector<S2Shape *>> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>, std::pair<S2Shape *const, std::vector<S2Shape *>> &, std::pair<S2Shape *const, std::vector<S2Shape *>> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<S2Shape *, std::vector<S2Shape *>, std::less<S2Shape *>, std::allocator<std::pair<S2Shape *const, std::vector<S2Shape *>>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_contains_brute_force.cc:18:
In file included from ../src/s2/s2shapeutil_contains_brute_force.h:21:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
21 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shapeutil_get_reference_point.cc -o s2/s2shapeutil_get_reference_point.o
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2shapeutil_coding.cc:18:
In file included from ../src/s2/s2shapeutil_coding.h:41:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_edge_iterator.cc:16:
In file included from ../src/s2/s2shapeutil_edge_iterator.h:19:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
41 warnings generated.
36 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shapeutil_range_iterator.cc -o s2/s2shapeutil_range_iterator.o
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2shapeutil_visit_crossing_edge_pairs.cc -o s2/s2shapeutil_visit_crossing_edge_pairs.o
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2testing.cc -o s2/s2testing.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2shapeutil_get_reference_point.cc:18:
In file included from ../src/s2/s2shapeutil_get_reference_point.h:21:
In file included from ../src/s2/s2shape_index.h:38:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/container/internal/btree.h:2068:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<absl::container_internal::btree_iterator<absl::container_internal::btree_node<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>, std::pair<const Vector3<double>, int> &, std::pair<const Vector3<double>, int> *>>' requested here
 2068 |   static_assert(type_traits_internal::is_trivially_copyable<iterator>::value,
      |                                       ^
../src/absl/container/internal/btree.h:1345:19: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::static_assert_validation' requested here
 1345 |     static_assert(static_assert_validation(), "This call must be elided.");
      |                   ^
../src/absl/container/internal/btree_container.h:37:7: note: in instantiation of member function 'absl::container_internal::btree<absl::container_internal::map_params<Vector3<double>, int, std::less<Vector3<double>>, std::allocator<std::pair<const Vector3<double>, int>>, 256, false>>::~btree' requested here
   37 | class btree_container {
      |       ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_range_iterator.cc:18:
In file included from ../src/s2/s2shapeutil_range_iterator.h:21:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
21 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2text_format.cc -o s2/s2text_format.o
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
41 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/s2wedge_relations.cc -o s2/s2wedge_relations.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/container/internal/inlined_vector.h:97:33: note: in instantiation of template class 'absl::is_trivially_destructible<s2shapeutil::ShapeEdge>' requested here
   97 |                           absl::is_trivially_destructible<ValueType<A>>::value>
      |                                 ^
../src/absl/container/internal/inlined_vector.h:772:3: note: in instantiation of default argument for 'DestroyAdapter<std::allocator<s2shapeutil::ShapeEdge>>' required here
  772 |   DestroyAdapter<A>::DestroyElements(GetAllocator(), storage_view.data,
      |   ^~~~~~~~~~~~~~~~~
../src/absl/container/internal/inlined_vector.h:745:10: note: in instantiation of function template specialization 'absl::inlined_vector_internal::Storage<s2shapeutil::ShapeEdge, 16, std::allocator<s2shapeutil::ShapeEdge>>::EmplaceBackSlow<s2shapeutil::ShapeEdge>' requested here
  745 |   return EmplaceBackSlow(std::forward<Args>(args)...);
      |          ^
../src/absl/container/inlined_vector.h:676:21: note: in instantiation of function template specialization 'absl::inlined_vector_internal::Storage<s2shapeutil::ShapeEdge, 16, std::allocator<s2shapeutil::ShapeEdge>>::EmplaceBack<s2shapeutil::ShapeEdge>' requested here
  676 |     return storage_.EmplaceBack(std::forward<Args>(args)...);
      |                     ^
../src/absl/container/inlined_vector.h:687:23: note: in instantiation of function template specialization 'absl::InlinedVector<s2shapeutil::ShapeEdge, 16>::emplace_back<s2shapeutil::ShapeEdge>' requested here
  687 |     static_cast<void>(emplace_back(std::move(v)));
      |                       ^
s2/s2shapeutil_visit_crossing_edge_pairs.cc:44:20: note: in instantiation of member function 'absl::InlinedVector<s2shapeutil::ShapeEdge, 16>::push_back' requested here
   44 |       shape_edges->push_back(ShapeEdge(shape, clipped.edge(i)));
      |                    ^
In file included from s2/s2shapeutil_visit_crossing_edge_pairs.cc:18:
In file included from ../src/s2/s2shapeutil_visit_crossing_edge_pairs.h:22:
In file included from ../src/s2/s2crossing_edge_query.h:25:
In file included from ../src/absl/container/inlined_vector.h:53:
In file included from ../src/absl/container/internal/inlined_vector.h:30:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:234:24: note: in instantiation of template class 'absl::is_trivially_copy_assignable<s2shapeutil::ShapeEdge>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |                        ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_assignable<s2shapeutil::ShapeEdge>, absl::is_trivially_destructible<s2shapeutil::ShapeEdge>>' requested here
  234 |     : std::conditional<T::value, conjunction<Ts...>, T>::type {};
      |       ^
../src/absl/meta/type_traits.h:234:7: note: in instantiation of template class 'absl::conjunction<absl::is_trivially_copy_constructible<s2shapeutil::ShapeEdge>, absl::is_trivially_copy_assignable<s2shapeutil::ShapeEdge>, absl::is_trivially_destructible<s2shapeutil::ShapeEdge>>' requested here
../src/absl/container/internal/inlined_vector.h:321:16: note: in instantiation of template class 'absl::conjunction<std::is_same<std::allocator<s2shapeutil::ShapeEdge>, std::allocator<s2shapeutil::ShapeEdge>>, absl::is_trivially_copy_constructible<s2shapeutil::ShapeEdge>, absl::is_trivially_copy_assignable<s2shapeutil::ShapeEdge>, absl::is_trivially_destructible<s2shapeutil::ShapeEdge>>' requested here
  321 |     } else if (IsMemcpyOk<A>::value) {
      |                ^
../src/absl/container/inlined_vector.h:117:3: note: in instantiation of member function 'absl::inlined_vector_internal::Storage<s2shapeutil::ShapeEdge, 16, std::allocator<s2shapeutil::ShapeEdge>>::~Storage' requested here
  117 |   InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
      |   ^
s2/s2shapeutil_visit_crossing_edge_pairs.cc:116:19: note: in instantiation of member function 'absl::InlinedVector<s2shapeutil::ShapeEdge, 16>::InlinedVector' requested here
  116 |   ShapeEdgeVector shape_edges;
      |                   ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2testing.cc:19:
In file included from ../src/s2/s2testing.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2wedge_relations.cc:18:
In file included from ../src/s2/s2wedge_relations.h:24:
In file included from ../src/s2/s2point.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
23 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/strings/ostringstream.cc -o s2/strings/ostringstream.o
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/strings/serialize.cc -o s2/strings/serialize.o
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/gtl/compact_array.h:508:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here
  508 |   static_assert(absl::is_trivially_copy_constructible<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested here
  509 |                 absl::is_trivially_copy_assignable<value_type>::value &&
      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | class compact_array : public compact_array_base<T, A> {
      |                              ^
../src/s2/s2shape_index.h:157:21: note: in instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here
  157 |   S2ClippedShapeSet shapes_;
      |                     ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<short>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]
  143 |   return bit_cast<int16_t>(FromHost16(bit_cast<uint16_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<int>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32_t, Source = int32_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:146:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32_t, Source = int32_t, $2 = (no value)]
  146 |   return bit_cast<int32_t>(FromHost32(bit_cast<uint32_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<long>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64_t, Source = int64_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:149:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)]
  149 |   return bit_cast<int64_t>(FromHost64(bit_cast<uint64_t>(x)));
      |                                       ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<absl::string_view>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/absl/types/internal/optional.h:182:31: note: in instantiation of template class 'absl::is_trivially_copy_constructible<absl::string_view>' requested here
  182 |           bool unused = absl::is_trivially_copy_constructible<T>::value&&
      |                               ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
In file included from s2/s2text_format.cc:16:
In file included from ../src/s2/s2text_format.h:32:
In file included from ../src/s2/s2cell_id.h:31:
In file included from ../src/s2/r2.h:22:
In file included from ../src/s2/util/math/vector.h:34:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/types/internal/optional.h:183:21: note: in instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested here
  183 |               absl::is_trivially_copy_assignable<typename std::remove_cv<
      |                     ^
../src/absl/types/optional.h:119:45: note: in instantiation of default argument for 'optional_data<absl::string_view>' required here
  119 | class optional : private optional_internal::optional_data<T>,
      |                                             ^~~~~~~~~~~~~~~~
../src/absl/strings/cord.h:745:54: note: in instantiation of template class 'absl::optional<absl::string_view>' requested here
  745 |     absl::optional<absl::string_view> maybe_flat = c.TryFlat();
      |                                                      ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/util/bits/bit-interleave.cc -o s2/util/bits/bit-interleave.o
In file included from s2/strings/serialize.cc:21:
In file included from ../src/absl/strings/str_split.h:48:
In file included from ../src/absl/strings/internal/str_split_internal.h:42:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/util/bits/bits.cc -o s2/util/bits/bits.o
5 warnings generated.
In file included from s2/util/bits/bits.cc:19:
In file included from ../src/s2/util/bits/bits.h:48:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
38 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/util/coding/coder.cc -o s2/util/coding/coder.o
5 warnings generated.
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<float>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<float>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]
  645 |     return EndianClass::FromHost32(absl::bit_cast<uint32>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<double>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<double>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:155:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<double>' requested here
  155 |                   type_traits_internal::is_trivially_copyable<Source>::value &&
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:562:7: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned long long>' requested here
  562 |       is_trivially_destructible<ExtentsRemoved>::value &&
      |       ^
../src/absl/meta/type_traits.h:571:39: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<T>::kValue> {};
      |                                       ^
../src/absl/base/casts.h:156:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested here
  156 |                   type_traits_internal::is_trivially_copyable<Dest>::value
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]
  661 |     return EndianClass::FromHost64(absl::bit_cast<uint64>(v));
      |                                    ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:99:27: note: in instantiation of template class 'absl::is_trivially_destructible<Decoder>' requested here
   99 |                     absl::is_trivially_destructible<T>::value> {};
      |                           ^
../src/absl/meta/type_traits.h:422:41: note: in instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<Decoder>' requested here
  422 |           std::is_lvalue_reference<T>>::type::type {
      |                                         ^
../src/s2/util/coding/coder.h:458:23: note: in instantiation of template class 'absl::is_trivially_copy_constructible<Decoder>' requested here
  458 |   static_assert(absl::is_trivially_copy_constructible<Decoder>::value,
      |                       ^
In file included from s2/util/coding/coder.cc:19:
In file included from ../src/s2/util/coding/coder.h:26:
In file included from ../src/s2/base/casts.h:32:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/s2/util/coding/coder.h:460:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<Decoder>' requested here
  460 |   static_assert(absl::is_trivially_copy_assignable<Decoder>::value,
      |                       ^
19 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/util/coding/varint.cc -o s2/util/coding/varint.o
In file included from s2/util/coding/varint.cc:17:
In file included from ../src/s2/util/coding/varint.h:41:
In file included from ../src/s2/util/bits/bits.h:48:
In file included from ../src/absl/base/casts.h:38:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/util/math/exactfloat/exactfloat.cc -o s2/util/math/exactfloat/exactfloat.o
5 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/util/math/mathutil.cc -o s2/util/math/mathutil.o
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -I"/data/gannet/ripley/R/R-clang/include" -DNDEBUG -I../src -DSTRICT_R_HEADERS -I'/data/gannet/ripley/R/test-clang/Rcpp/include' -I'/data/gannet/ripley/R/test-clang/wk/include' -isystem /usr/local/clang19/include -I/usr/local/clang/include   -DOPENSSL_SUPPRESS_DEPRECATED -DIS_LITTLE_ENDIAN -pthread -fpic  -O3 -Wall -pedantic -frtti -Wp,-D_FORTIFY_SOURCE=3  -DR_NO_REMAP -c s2/util/units/length-units.cc -o s2/util/units/length-units.o
In file included from s2/util/math/exactfloat/exactfloat.cc:33:
In file included from ../src/absl/container/fixed_array.h:50:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:494:17: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  494 |           bool, __has_trivial_assign(typename std::remove_reference<T>::type) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(ExtentsRemoved) || !kIsCopyOrMoveConstructible) &&
      |        ^
../src/absl/meta/type_traits.h:560:8: warning: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]
  560 |       (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
      |        ^
../src/absl/meta/type_traits.h:350:36: warning: builtin __has_trivial_constructor is deprecated; use __is_trivially_constructible instead [-Wdeprecated-builtins]
  350 |     : std::integral_constant<bool, __has_trivial_constructor(T) &&
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<unsigned char>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<unsigned char>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/util/math/exactfloat/exactfloat.cc:153:35: note: in instantiation of member function 'absl::FixedArray<unsigned char>::FixedArray' requested here
  153 |   absl::FixedArray<unsigned char> bytes(BN_num_bytes(bn));
      |                                   ^
In file included from s2/util/math/exactfloat/exactfloat.cc:33:
In file included from ../src/absl/container/fixed_array.h:50:
In file included from ../src/absl/container/internal/compressed_tuple.h:40:
In file included from ../src/absl/utility/utility.h:50:
In file included from ../src/absl/base/internal/invoke.h:64:
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_constant<bool, __has_trivial_destructor(T) &&
      |                                    ^
../src/absl/meta/type_traits.h:352:36: note: in instantiation of template class 'absl::is_trivially_destructible<unsigned char>' requested here
  352 |                                    is_trivially_destructible<T>::value> {
      |                                    ^
../src/absl/container/fixed_array.h:100:19: note: in instantiation of template class 'absl::is_trivially_default_constructible<unsigned char>' requested here
  100 |     return !absl::is_trivially_default_constructible<StorageElement>::value;
      |                   ^
../src/absl/container/fixed_array.h:136:9: note: in instantiation of member function 'absl::FixedArray<unsigned char>::DefaultConstructorIsNonTrivial' requested here
  136 |     if (DefaultConstructorIsNonTrivial()) {
      |         ^
s2/util/math/exactfloat/exactfloat.cc:153:35: note: in instantiation of member function 'absl::FixedArray<unsigned char>::FixedArray' requested here
  153 |   absl::FixedArray<unsigned char> bytes(BN_num_bytes(bn));
      |                                   ^
7 warnings generated.
/usr/local/clang19/bin/clang++ -stdlib=libc++ -std=gnu++14 -shared -L/usr/local/clang/lib64 -L/usr/local/clang19/lib -L/usr/local/clang19/lib/x86_64-unknown-linux-gnu -L/usr/local/gcc14/lib64 -L/usr/local/lib64 -o s2.so absl/base/internal/cycleclock.o absl/base/internal/low_level_alloc.o absl/base/internal/raw_logging.o absl/base/internal/scoped_set_env.o absl/base/internal/spinlock_wait.o absl/base/internal/spinlock.o absl/base/internal/strerror.o absl/base/internal/sysinfo.o absl/base/internal/thread_identity.o absl/base/internal/throw_delegate.o absl/base/internal/unscaledcycleclock.o absl/base/log_severity.o absl/container/internal/hashtablez_sampler_force_weak_definition.o absl/container/internal/hashtablez_sampler.o absl/container/internal/raw_hash_set.o absl/debugging/failure_signal_handler.o absl/debugging/internal/address_is_readable.o absl/debugging/internal/demangle.o absl/debugging/internal/elf_mem_image.o absl/debugging/internal/examine_stack.o absl/debugging/internal/stack_consumption.o absl/debugging/internal/vdso_support.o absl/debugging/leak_check.o absl/debugging/stacktrace.o absl/debugging/symbolize.o absl/numeric/int128.o absl/profiling/internal/exponential_biased.o absl/profiling/internal/periodic_sampler.o absl/strings/ascii.o absl/strings/charconv.o absl/strings/cord_analysis.o absl/strings/cord_buffer.o absl/strings/cord.o absl/strings/escaping.o absl/strings/internal/charconv_bigint.o absl/strings/internal/charconv_parse.o absl/strings/internal/cord_internal.o absl/strings/internal/cord_rep_btree_navigator.o absl/strings/internal/cord_rep_btree_reader.o absl/strings/internal/cord_rep_btree.o absl/strings/internal/cord_rep_consume.o absl/strings/internal/cord_rep_crc.o absl/strings/internal/cord_rep_ring.o absl/strings/internal/cordz_functions.o absl/strings/internal/cordz_handle.o absl/strings/internal/cordz_info.o absl/strings/internal/cordz_sample_token.o absl/strings/internal/escaping.o absl/strings/internal/memutil.o absl/strings/internal/ostringstream.o absl/strings/internal/pow10_helper.o absl/strings/internal/str_format/arg.o absl/strings/internal/str_format/bind.o absl/strings/internal/str_format/extension.o absl/strings/internal/str_format/float_conversion.o absl/strings/internal/str_format/output.o absl/strings/internal/str_format/parser.o absl/strings/internal/utf8.o absl/strings/match.o absl/strings/numbers.o absl/strings/str_cat.o absl/strings/str_replace.o absl/strings/str_split.o absl/strings/string_view.o absl/strings/substitute.o absl/synchronization/barrier.o absl/synchronization/blocking_counter.o absl/synchronization/internal/create_thread_identity.o absl/synchronization/internal/graphcycles.o absl/synchronization/internal/per_thread_sem.o absl/synchronization/internal/waiter.o absl/synchronization/mutex.o absl/synchronization/notification.o absl/time/civil_time.o absl/time/clock.o absl/time/duration.o absl/time/format.o absl/time/internal/cctz/src/civil_time_detail.o absl/time/internal/cctz/src/time_zone_fixed.o absl/time/internal/cctz/src/time_zone_format.o absl/time/internal/cctz/src/time_zone_if.o absl/time/internal/cctz/src/time_zone_impl.o absl/time/internal/cctz/src/time_zone_info.o absl/time/internal/cctz/src/time_zone_libc.o absl/time/internal/cctz/src/time_zone_lookup.o absl/time/internal/cctz/src/time_zone_posix.o absl/time/internal/cctz/src/zone_info_source.o absl/time/time.o absl/types/bad_any_cast.o absl/types/bad_optional_access.o absl/types/bad_variant_access.o cpp-compat.o s2-accessors.o s2-bounds.o s2-cell.o s2-cell-union.o s2-constructors-formatters.o s2-predicates.o s2-transformers.o init.o RcppExports.o s2-geography.o s2-lnglat.o s2-matrix.o wk-impl.o s2geography/accessors.o s2geography/accessors-geog.o s2geography/linear-referencing.o s2geography/distance.o s2geography/build.o s2geography/coverings.o s2geography/geography.o s2geography/predicates.o s2/base/stringprintf.o s2/base/strtoint.o s2/encoded_s2cell_id_vector.o s2/encoded_s2point_vector.o s2/encoded_s2shape_index.o s2/encoded_string_vector.o s2/id_set_lexicon.o s2/mutable_s2shape_index.o s2/r2rect.o s2/s1angle.o s2/s1chord_angle.o s2/s1interval.o s2/s2boolean_operation.o s2/s2builder_graph.o s2/s2builder.o s2/s2builderutil_closed_set_normalizer.o s2/s2builderutil_find_polygon_degeneracies.o s2/s2builderutil_lax_polygon_layer.o s2/s2builderutil_s2point_vector_layer.o s2/s2builderutil_s2polygon_layer.o s2/s2builderutil_s2polyline_layer.o s2/s2builderutil_s2polyline_vector_layer.o s2/s2builderutil_snap_functions.o s2/s2builderutil_testing.o s2/s2cap.o s2/s2cell_id.o s2/s2cell_index.o s2/s2cell_union.o s2/s2cell.o s2/s2centroids.o s2/s2closest_cell_query.o s2/s2closest_edge_query.o s2/s2closest_point_query.o s2/s2contains_vertex_query.o s2/s2convex_hull_query.o s2/s2coords.o s2/s2crossing_edge_query.o s2/s2debug.o s2/s2earth.o s2/s2edge_clipping.o s2/s2edge_crosser.o s2/s2edge_crossings.o s2/s2edge_distances.o s2/s2edge_tessellator.o s2/s2error.o s2/s2furthest_edge_query.o s2/s2latlng_rect_bounder.o s2/s2latlng_rect.o s2/s2latlng.o s2/s2lax_loop_shape.o s2/s2lax_polygon_shape.o s2/s2lax_polyline_shape.o s2/s2loop_measures.o s2/s2loop.o s2/s2max_distance_targets.o s2/s2measures.o s2/s2metrics.o s2/s2min_distance_targets.o s2/s2padded_cell.o s2/s2point_compression.o s2/s2point_region.o s2/s2pointutil.o s2/s2polygon.o s2/s2polyline_alignment.o s2/s2polyline_measures.o s2/s2polyline_simplifier.o s2/s2polyline.o s2/s2predicates.o s2/s2projections.o s2/s2r2rect.o s2/s2region_coverer.o s2/s2region_intersection.o s2/s2region_term_indexer.o s2/s2region_union.o s2/s2region.o s2/s2shape_index_buffered_region.o s2/s2shape_index_measures.o s2/s2shape_index.o s2/s2shape_measures.o s2/s2shapeutil_build_polygon_boundaries.o s2/s2shapeutil_coding.o s2/s2shapeutil_contains_brute_force.o s2/s2shapeutil_edge_iterator.o s2/s2shapeutil_get_reference_point.o s2/s2shapeutil_range_iterator.o s2/s2shapeutil_visit_crossing_edge_pairs.o s2/s2testing.o s2/s2text_format.o s2/s2wedge_relations.o s2/strings/ostringstream.o s2/strings/serialize.o s2/util/bits/bit-interleave.o s2/util/bits/bits.o s2/util/coding/coder.o s2/util/coding/varint.o s2/util/math/exactfloat/exactfloat.o s2/util/math/mathutil.o s2/util/units/length-units.o -l:libssl.so.3 -l:libcrypto.so.3
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-clang/s2/src'
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-clang/s2/src'
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-clang/s2/src'
installing to /data/gannet/ripley/R/packages/tests-clang/s2.Rcheck/00LOCK-s2/00new/s2/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (s2)