* 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.3’
using C++ compiler: ‘clang version 19.1.3’
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
/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/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.
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
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/hashtablez_sampler.cc -o absl/container/internal/hashtablez_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/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.
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/failure_signal_handler.cc -o absl/debugging/failure_signal_handler.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/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
/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
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)));
      |                                       ^
23 warnings generated.
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/cord.cc -o absl/strings/cord.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/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;
      |                                                ^
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/escaping.cc -o absl/strings/escaping.o
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)));
      |                                       ^
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
/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
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)));
      |                                       ^
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_reader.cc -o absl/strings/internal/cord_rep_btree_reader.o
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
/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)));
      |                                       ^
23 warnings generated.
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_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) &&
      |        ^
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);
      |                ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
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
/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_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.
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) &&
      |                 ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __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.
/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
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)));
      |                                       ^
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_sample_token.cc -o absl/strings/internal/cordz_sample_token.o
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
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/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
/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
/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
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)));
      |                                       ^
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")))
      |                      ^
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/extension.cc -o absl/strings/internal/str_format/extension.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/float_conversion.cc -o absl/strings/internal/str_format/float_conversion.o
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/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) {
      |                                                                             ^
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/str_format/parser.cc -o absl/strings/internal/str_format/parser.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/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
/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
/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/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),
      |           ^
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)));
      |                                       ^
7 warnings generated.
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)));
      |                                       ^
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
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
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/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
/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
/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
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)))
      |                  ^
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/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
/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
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) &&
      |        ^
/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
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/time/clock.cc -o absl/time/clock.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/duration.cc -o absl/time/duration.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/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);
      |          ^
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_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
/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-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) &&
      |        ^
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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();
      |                                                      ^
/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
/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
38 warnings generated.
38 warnings generated.
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) &&
      |        ^
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-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,
      |                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
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-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.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();
      |                                                      ^
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,
      |                            ^
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-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);
      |         ^
/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
      |         ^
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-predicates.cpp -o s2-predicates.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-transformers.cpp -o s2-transformers.o
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) &&
      |        ^
/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
/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 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) &&
      |        ^
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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));
      |                                    ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_trivialIn file included from ls2-constructors-formatters.cppy:_6c:
oIn file included from p./s2/s2pointutil.hy:a25b:
lIn file included from e../src/s2/s1angle.h_:i28m:
pIn file included from l../src/s2/s2point.h<:T22>:
:In file included from :../src/s2/util/math/vector.hk:V34a:
lIn file included from u../src/absl/utility/utility.he:>50 :
{In file included from }../src/absl/base/internal/invoke.h;:
64      :
| ../src/absl/meta/type_traits.h                                      ^:
559:8: ../src/absl/base/casts.hwarning: :builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]155
:41: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here  
559 |      155  |     ( _ _ h a s _ t r i v i a l _ c otpyyp(eE_xttreanittssR_eimnotveerdn)a l|:|: i!sk_ItsrCiovpiyaOlrlMyo_vceoCpoynasbtlreu<cStoiubrlcee)> :&:&v
a      l| u       ^e
 &&
      |                                         ^
../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
../src/absl/base/casts.h:163:23  :571  | note:  while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float] 
       163  |  i nbloionle,  ctoynpset_etxrpari tDse_sitn tbeirtn_acla:s:ti(sc_otnrsitv iSaolulryc_ec&o psyoaubrlcee_)i m{p
l      <| T                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>
::  k164V | a l uree>t u{r}n; 
_      _| b                                      ^u
iltin_../src/absl/base/casts.hb:i156t:_41c:a snote: tin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned int>' requested here(
Dest  ,156  | s o u r c e ) ; 
        |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    165  |  } 
       t| y~p
e_traits../src/s2/util/endian/endian.h_:i645n:t36e:r nnote: awhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]l
::i  s645_ | t r i v iraeltluyr_nc oEpnydaibalneC<lDaessst:>::F:rvoamlHuoes
t      3| 2                                        ^(
absl::../src/absl/base/casts.hb:i163t:_23c:a snote: twhile substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]<
uint  31632 | >i(nvl)i)n;e
       c| o                                   ^n
stexpr Dest bit_cast(coIn file included from ns2-predicates.cpps:t2 :
SIn file included from o./s2/s2boolean_operation.hu:r24c:
eIn file included from &../src/s2/s2builder.h :s31o:
uIn file included from r../src/s2/mutable_s2shape_index.hc:e34):
 In file included from {../src/s2/s2cell_id.h
:      31| :
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~In file included from 
../src/s2/r2.h:  22164:
 | In file included from  ../src/s2/util/math/vector.h :r34e:
tIn file included from u../src/absl/utility/utility.hr:n50 :
_In file included from _../src/absl/base/internal/invoke.hb:u64i:
l../src/absl/meta/type_traits.ht:i560n:_8b:i twarning: _builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]c
ast(  D560e | s t ,   s o u(r_c_eh)a;s
_      t| r  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~i
v  i165a | l}_
a      s| s~i
gn(Ex../src/s2/util/endian/endian.ht:e645n:t36s:R enote: mwhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]o
ved)   645| | |   ! k IrseCtouprynOr MEonvdeiAasnsCilgansasb:l:eF)r o&m&H
o      s| t       ^3
2(absl::bit_cast<uint32>(v));
      ../src/absl/meta/type_traits.h| :                                   ^301
:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : stdIn file included from :s2-constructors-formatters.cpp::i6n:
tIn file included from e./s2/s2pointutil.hg:r25a:
lIn file included from _../src/s2/s1angle.hc:o28n:
sIn file included from t../src/s2/s2point.ha:n22t:
<In file included from b../src/s2/util/math/vector.ho:o34l:
,In file included from  ../src/absl/utility/utility.h_:_50h:
aIn file included from s../src/absl/base/internal/invoke.h_:t64r:
i../src/absl/meta/type_traits.hv:i560a:l8_:d ewarning: sbuiltin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]t
ruct  o560r | ( T )   & & 
(      _| _                                   ^h
as_../src/absl/meta/type_traits.ht:r562i:v7i:a lnote: _in instantiation of template class 'absl::is_trivially_destructible<float>' requested herea
ssi  g562n | ( E x t e n tissR_etmroivveida)l l|y|_ d!eksItsrCuocptyiObrlMeo<vEexAtsesnitgsnRaebmloev)e d&>&:
:      v| a       ^l
ue &&
      |       ^
../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 |       ../src/absl/meta/type_traits.h : 301 : 36b:o owarning: lbuiltin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins],
 type  _301t | r a i t s:_ isnttde:r:nianlt:e:girsa_lt_rciovnisatlalnyt_<cboopoyla,b l_e__hiamsp_lt<rTi>v:i:aklV_adleuset>r u{c}t;o
r      (| T                                      ^)
 &&../src/absl/base/casts.h
:      155| :                                   ^41
: note: in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<float>' requested here
../src/absl/meta/type_traits.h:  562155: | 7 :   note:  in instantiation of template class 'absl::is_trivially_destructible<unsigned int>' requested here 
       562  |              itsy_pter_itvriaailtlsy__idnetsetrrnuaclt:i:bilse_<ExtentsRemoved>::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) || !kIsCopyOrMotverCiovnisatlrluyc_tciobplyea)b l&e&<
S      o| u       ^r
ce>::v../src/absl/meta/type_traits.ha:l571u:e39 :& &note: 
in instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned long long>' requested here      
|                                         ^
  571 |       ../src/absl/base/casts.h : 163 : 23b:o onote: lwhile substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float],
 type_  t163r | aiintlsi_nien tceornnsatle:x:pirs _Dtersitv ibailtl_yc_acsotp(ycaobnlset_ iSmopulr<cTe>&: :skoVuracleu)e >{ 
{      }| ;                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

      |                                         ^164
 |   re../src/absl/base/casts.ht:u156r:n41 :_ _note: bin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned long long>' requested hereu
ilt  i156n | _ b i t _ c a s t ( D e s t ,   s o utrycpee)_;t
r      a| i  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~t
s  _165i | n}t
e      r| n~a
l::is_../src/s2/util/endian/endian.ht:r645i:v36i:a lnote: lwhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint32, Source = float, $2 = (no value)]y
_co  p645y | a b l e <rDeetsutr>n: :Evnadliuaen
C      l| a                                        ^s
s::Fr../src/absl/base/casts.ho:m163H:o23s:t 3note: 2while substituting prior template arguments into non-type template parameter [with Dest = uint64, Source = double](
absl:  :163b | iitn_lcianset <cuoinnstt3e2x>p(rv )D)e;s
t       | b                                   ^i
t_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:661:36: note: while substituting deduced template arguments into function template '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(coIn file included from ns2-predicates.cpps:t2 :
SIn file included from o./s2/s2boolean_operation.hu:r24c:
eIn file included from &../src/s2/s2builder.h :s31o:
uIn file included from r../src/s2/mutable_s2shape_index.hc:e34):
 In file included from {../src/s2/s2cell_id.h
:      31| :
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~In file included from 
../src/s2/r2.h:22  :
164In file included from  | ../src/s2/util/math/vector.h : 34r:
eIn file included from t../src/absl/utility/utility.hu:r50n:
 In file included from _../src/absl/base/internal/invoke.h_:b64u:
i../src/absl/meta/type_traits.hl:t559i:n8_:b iwarning: tbuiltin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]_
cast(D  e559s | t ,   s o u r(c_e_)h;a
s      _| t  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~r
i  v165i | a}l
_      c| o~p
y(Exte../src/s2/util/endian/endian.hn:t661s:R36e:m onote: vwhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]e
d) |  |661  | ! k I s CroeptyuOrrnM oEvnedCioannsCtlrauscst:i:bFlreo)m H&o&s
t      6| 4       ^(
absl:../src/absl/meta/type_traits.h::b571i:t39_:c anote: sin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned int>' requested heret
<uin  t5716 | 4 > ( v ) ) ; 
        |                                     ^b
ool, type_traits_internal::is_trivially_copyable_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 | }
In file included from       s2-constructors-formatters.cpp| :~6
:
In file included from ./s2/s2pointutil.h../src/s2/util/endian/endian.h::25661:
:In file included from 36../src/s2/s1angle.h:: 28note: :
while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64, Source = double, $2 = (no value)]In file included from 
../src/s2/s2point.h:22  :
661In file included from  | ../src/s2/util/math/vector.h : 34 :
 In file included from r../src/absl/utility/utility.he:t50u:
rIn file included from n../src/absl/base/internal/invoke.h :E64n:
d../src/absl/meta/type_traits.hi:a301n:C36l:a swarning: sbuiltin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]:
:FromH  o301s | t 6 4 ( a:b sslt:d::b:iitn_tceagsrta<lu_icnotn6s4t>a(nvt)<)b;o
o      l| ,                                   ^ 
__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-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,
      |                       ^
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-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-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-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-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();
      |                                                      ^
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-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<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());
      |                                              ^
/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-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);
      |         ^
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-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) &&
      |                                    ^
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_c../src/absl/meta/type_traits.h:494:17: warning: builtin __has_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) &&
      |        ^
ontainer {
      |       ^
../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);
      |         ^
39 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-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));
      |                                    ^
/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
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();
      |                                                      ^
/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
52 warnings generated.
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) &&
      |        ^
52 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: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.
5 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
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
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 {
      |                                         ^
../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/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-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<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/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 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<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.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 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 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 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);
      |         ^
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,
      |                             ^
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/accessors-geog.cc -o s2geography/accessors-geog.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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 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();
      |                                                      ^
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
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/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: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/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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/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();
      |                                                      ^
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());
      |                                              ^
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: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);
      |         ^
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:301:36: warning: builtin __has_trivial_destructor 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) &&
      |        ^
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/coverings.cc -o s2geography/coverings.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/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/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 {
      |       ^
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) &&
      |        ^
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/geography.cc -o s2geography/geography.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/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();
      |                                                      ^
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/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) &&
      |        ^
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
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/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) &&
      |        ^
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/base/stringprintf.cc -o s2/base/stringprintf.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();
      |                                                      ^
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/base/strtoint.cc -o s2/base/strtoint.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_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
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
19 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/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,
      |                       ^
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/encoded_s2shape_index.cc -o s2/encoded_s2shape_index.o
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_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_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) {
      |                                         ^
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/encoded_string_vector.cc -o s2/encoded_string_vector.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
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/id_set_lexicon.cc -o s2/id_set_lexicon.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/mutable_s2shape_index.cc -o s2/mutable_s2shape_index.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/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
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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::FromHos5t warning6s4 generated(.
absl::bit_cast<uint64>(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 s2/s1interval.cc -o s2/s1interval.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: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/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();
      |                                                      ^
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 {
      |       ^
/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
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) &&
      |        ^
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/s2builder_graph.cc -o s2/s2builder_graph.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/s2builder.cc -o s2/s2builder.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) &&
      |        ^
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) &&
      |        ^
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/s2builderutil_closed_set_normalizer.cc -o s2/s2builderutil_closed_set_normalizer.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_find_polygon_degeneracies.cc -o s2/s2builderutil_find_polygon_degeneracies.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/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/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)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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(coIn file included from ns2/s2boolean_operation.ccs:t66 :
SIn file included from o../src/s2/s2boolean_operation.hu:r24c:
eIn file included from &../src/s2/s2builder.h :s31o:
uIn file included from r../src/s2/mutable_s2shape_index.hc:e34):
 In file included from {../src/s2/s2cell_id.h
:      31| :
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~In file included from 
../src/s2/r2.h:22  :
164In file included from  | ../src/s2/util/math/vector.h : 34r:
eIn file included from t../src/absl/utility/utility.hu:r50n:
 In file included from _../src/absl/base/internal/invoke.h_:b64u:
i../src/absl/meta/type_traits.hl:t301i:n36_:b iwarning: tbuiltin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]_
cast  (301D | e s t ,  :s osutrdc:e:)i;n
t      e| g  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~r
a  l165_ | c}o
n      s| t~a
nt<bo../src/absl/base/internal/endian.ho:l143,: 39_:_ hnote: awhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]s
_tri  v143i | a l _rdeetsutrrnu cbtiotr_(cTa)s t&<&i
n      t| 1                                   ^6
_t>(F../src/absl/meta/type_traits.hr:o99m:H27o:s tnote: 1in instantiation of template class 'absl::is_trivially_destructible<absl::string_view>' requested here6
(bit   _99c | a s t < u i n t 1 6 _ t > ( x ) ) ) ; 
       a| b                                      ^s
l::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 |  In file included from  s2/s2builder_graph.cc : 18 :
 In file included from  ../src/s2/s2builder_graph.h : 28 :
bIn file included from o../src/s2/s2builder.ho:l31,:
 In file included from _../src/s2/mutable_s2shape_index.h_:h34a:
sIn file included from _../src/s2/s2cell_id.ht:r31i:
vIn file included from i../src/s2/r2.ha:l22_:
aIn file included from s../src/s2/util/math/vector.hs:i34g:
nIn file included from (../src/absl/utility/utility.ht:y50p:
eIn file included from n../src/absl/base/internal/invoke.ha:m64e:
 ../src/absl/meta/type_traits.hs:t559d::8::r ewarning: mbuiltin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]o
ve_ref  e559r | e n c e < T >(:_:_thyapse_)t r&i&v
i      a| l                ^_
copy(../src/absl/types/internal/optional.hE:x183t:e21n:t snote: Rin instantiation of template class 'absl::is_trivially_copy_assignable<absl::string_view>' requested heree
move  d183) |   | |   ! k I s C o p y O r MaobvselC:o:nisst_rturcitviiballel)y _&c&o
p      y| _       ^a
ssig../src/absl/meta/type_traits.hn:a571b:l39e:< tnote: yin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable_impl<unsigned short>' requested herep
ename   571s | t d : : r e m o v e _bcovo<l
,       | t                    ^y
pe_t../src/absl/types/optional.hr:a119i:t45s:_ inote: nin instantiation of default argument for 'optional_data<absl::string_view>' required heret
erna  l119: | :cilsa_stsr iovpitailolnya_lc o:p yparbilvea_tiem polp<tTi>o:n:aklV_ailnutee>r n{a}l;:
:      o| p                                      ^t
iona../src/absl/base/casts.hl:_156d:a41t:a <note: Tin instantiation of template class 'absl::type_traits_internal::is_trivially_copyable<unsigned short>' requested here>
,
      |                                               ^~~~~~~~~~~~~~~~156
 |   ../src/absl/strings/cord.h : 745 : 54 :   note:  in instantiation of template class 'absl::optional<absl::string_view>' requested here 
      745  |     t y paeb_stlr:a:iotpst_iionntaelr<naabls:l::i:ss_ttrriinvgi_avlileyw_>c ompayyabbel_ef<lDaets t=> :c:.vTarlyuFel
a      t| (                                        ^)
;
      |                                                      ^../src/absl/base/casts.h
:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/absl/base/internal/endian.h:143:39: note: while substituting deduced template arguments into function template 'bit_cast' [with Dest = 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/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/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) &&
      |        ^
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/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/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_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 {
      |       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/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) &&
      |        ^
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/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());
      |                                              ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_internal::is_trivially_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_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<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_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>' requested here
  571 |           bool, type_traits_internal::is_trivially_copyable_impl<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) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from   s2/s2builder.cc164: | 70 :
 In file included from r../src/s2/s2builder.he:t31u:
rIn file included from n../src/s2/mutable_s2shape_index.h :_34_:
bIn file included from u../src/s2/s2cell_id.hi:l31t:
iIn file included from n../src/s2/r2.h_:b22i:
tIn file included from _../src/s2/util/math/vector.hc:a34s:
tIn file included from (../src/absl/utility/utility.hD:e50s:
tIn file included from ,../src/absl/base/internal/invoke.h :s64o:
u../src/absl/meta/type_traits.hr:c494e:)17;:
       warning: | builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  165 | }  
494       | |  ~ 
    ../src/absl/base/internal/endian.h : 149 : 39b:o onote: lwhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint64_t, Source = int64_t, $2 = (no value)],
 __  h149a | s _ trreitvuiranl _baists_icgans(tt<yipnetn6a4m_et >s(tFdr:o:mrHeomsotv6e4_(rbeifte_rceanscte<<uTi>n:t:6t4y_pte>)( x&)&)
)      ;| 
                ^      
|                                       ^
../src/s2/util/gtl/compact_array.h:509:23: note: in instantiation of template class 'absl::is_trivially_copy_assignable<int>' requested here
  In file included from 509s2/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 : 31a:
bIn file included from s../src/s2/mutable_s2shape_index.hl::34::
iIn file included from s../src/s2/s2cell_id.h_:t31r:
iIn file included from v../src/s2/r2.hi:a22l:
lIn file included from y../src/s2/util/math/vector.h_:c34o:
pIn file included from y../src/absl/utility/utility.h_assignable<value_t:y50p:
eIn file included from >../src/absl/base/internal/invoke.h:::64v:
a../src/absl/meta/type_traits.hl:u560e: 8&:& 
warning:       builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]| 
                      ^
  ../src/s2/util/gtl/compact_array.h560: | 528 : 30 :   note:  in instantiation of template class 'gtl::compact_array_base<int>' requested here(
__h  a528s | _ctlraisvsi aclo_mapsascitg_na(rErxatye n:t spRuebmloivce dc)o m|p|a c!tk_IasrCroapyy_ObraMsoev<eTA,s sAi>g n{a
b      l| e                             ^)
 &&s2/s2builder.cc
:      729| :       ^19
: note: in instantiation of template class 'gtl::compact_array<int>' requested here
  729 |     auto* sites = &edge_site../src/absl/meta/type_traits.hs:_301[:e36]:; 
warning:       builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]| 
                  ^
  301 |     : std::integral_constant<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_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();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/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<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/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(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/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/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/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_assIn file included from es2/s2builderutil_find_polygon_degeneracies.ccr:t18_:
vIn file included from a../src/s2/s2builderutil_find_polygon_degeneracies.hl:i24d:
aIn file included from t../src/s2/s2builder_graph.hi:o28n:
(In file included from )../src/s2/s2builder.h,: 31":
TIn file included from h../src/s2/mutable_s2shape_index.hi:s34 :
cIn file included from a../src/s2/s2cell_id.hl:l31 :
mIn file included from u../src/s2/r2.hs:t22 :
bIn file included from e../src/s2/util/math/vector.h :e34l:
iIn file included from d../src/absl/utility/utility.he:d50.:
"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]
  ../src/absl/container/internal/btree_container.h494: | 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 
      37b | ocolla,s s_ _bhtarse_et_rciovnitaali_naesrs i{g
n      (| t      ^y
pena../src/s2/s2closest_edge_query.hm:e361 :s28t:d :note: :in instantiation of member function 'S2ClosestEdgeQueryBase<S2MinDistance>::S2ClosestEdgeQueryBase' requested herer
emo  v361e | _irnelfienree nSc2eC<lTo>s:e:sttyEpdeg)e Q&u&e
r      y| :                ^:
S2Cl../src/s2/util/gtl/compact_array.ho:s509e:s23t:E dnote: gin instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested heree
Quer  y509( | c o n s t   S 2 S h a p e I n d eaxb*s li:n:diesx_,t
r      i| v                           ^i
ally_copy_assignablIn file included from es2/s2builder.cc<:v70a:
lIn file included from u../src/s2/s2builder.he:_31t:
yIn file included from p../src/s2/mutable_s2shape_index.he:>34::
:In file included from v../src/s2/s2cell_id.ha:l31u:
eIn file included from  ../src/s2/r2.h&:&22
:
      In file included from | ../src/s2/util/math/vector.h                      ^:
34:
In file included from ../src/s2/util/gtl/compact_array.h../src/absl/utility/utility.h::52850::
30In file included from :../src/absl/base/internal/invoke.h :note: 64in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here:

../src/absl/meta/type_traits.h:560  :5288 | :c lwarning: abuiltin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]s
s co  m560p | a c t _ a r r(a_y_ h:a sp_utbrliivci aclo_mapsascitg_na(rErxatye_nbtassRee<mTo,v eAd>)  {|
|       | !                             ^k
IsC../src/s2/s2shape_index.ho:p157y:O21r:M onote: vin instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested heree
Ass  i157g | n a bSl2eC)l i&p&p
e      d| S       ^h
apeSet shapes_;
      |                     ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]
  301 |     : std::integral_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/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/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);
      |         ^
/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: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/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/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 {
      |       ^
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);
      |                               ^
38 warnings generated.
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) &&
      |        ^
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_s2point_vector_layer.cc -o s2/s2builderutil_s2point_vector_layer.o
44 warnings generated.
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/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_;
      |                     ^
/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
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)));
      |                                       ^
/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
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();
      |                                                      ^
/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
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_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) &&
      |        ^
38 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<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)));
      |                                       ^
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_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_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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_;
      |                     ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
38 warnings generated.
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();
      |                                                      ^
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();
      |                                                      ^
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 {
      |       ^
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_snap_functions.cc -o s2/s2builderutil_snap_functions.o
38 warnings generated.
41 warnings generated.
62 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) &&
      |        ^
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: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, type_traits_internal::is_trivially_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();
      |                                                      ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
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)));
      |                                       ^
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/s2cap.cc -o s2/s2cap.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<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();
      |                                                      ^
/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
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_index.cc -o s2/s2cell_index.o
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) &&
      |        ^
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,
      |                       ^
19 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_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)));
      |                                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
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_union.cc -o s2/s2cell_union.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/s2cell.cc -o s2/s2cell.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
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.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
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/s2centroids.cc -o s2/s2centroids.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) &&
      |        ^
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/s2closest_cell_query.cc -o s2/s2closest_cell_query.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/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);
      |         ^
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/s2closest_edge_query.cc -o s2/s2closest_edge_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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
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_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_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/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);
      |         ^
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/s2closest_point_query.cc -o s2/s2closest_point_query.o
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_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_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/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_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();
      |                                                      ^
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/s2contains_vertex_query.cc -o s2/s2contains_vertex_query.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/s2convex_hull_query.cc -o s2/s2convex_hull_query.o
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)));
      |                                       ^
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/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/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.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
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)));
      |                                       ^
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<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/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();
      |                                                      ^
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/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) &&
      |        ^
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/s2crossing_edge_query.cc -o s2/s2crossing_edge_query.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: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/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/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 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/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_;
      |                     ^
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;
      |                         ^
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/s2debug.cc -o s2/s2debug.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/s2earth.cc -o s2/s2earth.o
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) &&
      |        ^
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_clipping.cc -o s2/s2edge_clipping.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/s2edge_crosser.cc -o s2/s2edge_crosser.o
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) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: 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_crossings.cc -o s2/s2edge_crossings.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.
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) &&
      |        ^
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_distances.cc -o s2/s2edge_distances.o
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.
/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_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/s2error.cc -o s2/s2error.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/s2furthest_edge_query.cc -o s2/s2furthest_edge_query.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_bounder.cc -o s2/s2latlng_rect_bounder.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) &&
      |        ^
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.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_)) {
      |                            ^
/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.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) &&
      |        ^
52 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/s2latlng.cc -o s2/s2latlng.o
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.
/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();
      |                                                      ^
/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
38 warnings generated.
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) &&
      |        ^
/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
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.cc -o s2/s2loop.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) &&
      |        ^
../src/absl/meta/type_traits.h:301:36: warning: builtin __has_trivial_destructor 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.
/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/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/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) &&
      |        ^
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);
      |         ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/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);
      |         ^
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.
52 warnings generated.
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) &&
      |        ^
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/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/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.
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) &&
      |        ^
/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
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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) &&
      |        ^
/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/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);
      |         ^
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);
      |         ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
19 warnings generated.
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) {
      |            ^~~~~~~~
/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.
/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
59 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) &&
      |        ^
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
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/s2polyline_alignment.cc -o s2/s2polyline_alignment.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_measures.cc -o s2/s2polyline_measures.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) &&
      |        ^
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) &&
      |        ^
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.
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
5 warnings generated.
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_simplifier.cc -o s2/s2polyline_simplifier.o
55 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
/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
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,
      |                       ^
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) &&
      |        ^
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/s2projections.cc -o s2/s2projections.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/s2r2rect.cc -o s2/s2r2rect.o
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/s2region_coverer.cc -o s2/s2region_coverer.o
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,
      |                       ^
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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,
      |                       ^
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_term_indexer.cc -o s2/s2region_term_indexer.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_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) &&
      |        ^
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
/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
5 warnings generated.
34 warnings generated.
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_buffered_region.cc -o s2/s2shape_index_buffered_region.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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 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/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<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)));
      |                                       ^
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,
      |                            ^
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<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/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::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:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.");
      |                   ^
../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:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_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);
      |         ^
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/s2shape_index_measures.cc -o s2/s2shape_index_measures.o
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_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_trivially_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_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
      |                                         ^
../src/absl/base/casts.h:163:23: note: while substituting prior template arguments into non-type template parameter [with Dest = uint32, Source = float]
  163 | inline constexpr Dest bit_cast(const Source& source) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  164 |   return __builtin_bit_cast(Dest, source);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  165 | }
      | ~
../src/s2/util/endian/endian.h:645:36: note: while substituting deduced template arguments into function template '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_;
      |                     ^
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_index.cc -o s2/s2shape_index.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/s2shape_measures.cc -o s2/s2shape_measures.o
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) &&
      |        ^
5 warnings generated.
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: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/s2shapeutil_build_polygon_boundaries.cc -o s2/s2shapeutil_build_polygon_boundaries.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/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<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:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.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 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.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.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);
      |           ^
22 warnings generated.
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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();
      |                                                      ^
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 {
      |       ^
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/s2shapeutil_coding.cc -o s2/s2shapeutil_coding.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:301:36: warning: builtin __has_trivial_destructor 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_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_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_;
      |                     ^
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)));
      |                                       ^
/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
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();
      |                                                      ^
/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_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) &&
      |        ^
38 warnings generated.
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_;
      |                     ^
21 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/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)));
      |                                       ^
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_get_reference_point.cc -o s2/s2shapeutil_get_reference_point.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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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)));
      |                                       ^
/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: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();
      |                                                      ^
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 {
      |       ^
41 warnings generated.
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) &&
      |        ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_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/s2shapeutil_visit_crossing_edge_pairs.cc -o s2/s2shapeutil_visit_crossing_edge_pairs.o
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) &&
      |        ^
/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
/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
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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_;
      |                     ^
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;
      |                   ^
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/s2wedge_relations.cc -o s2/s2wedge_relations.o
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: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/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,
      |                       ^
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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/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<DesIn file included from ts2/s2text_format.cc>::16::
vIn file included from a../src/s2/s2text_format.hl:u32e:

In file included from       ../src/s2/s2cell_id.h| :                                        ^31
:
In file included from ../src/s2/r2.h:../src/absl/base/casts.h22::
163In file included from :../src/s2/util/math/vector.h23::34 :
note: In file included from while substituting prior template arguments into non-type template parameter [with Dest = uint16_t, Source = int16_t]../src/absl/utility/utility.h
:50:
In file included from   ../src/absl/base/internal/invoke.h163: | 64i:
n../src/absl/meta/type_traits.hl:i301n:e36 :c owarning: nbuiltin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]s
texp  r301  | D e s t  :b istt_dc:a:sitn(tceognrsatl _Scoounrsctea&n ts<obuorocle,)  _{_
h      a| s                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~_
tr  i164v | i a lr_edteusrtnr u_c_tbouri(lTt)i n&_&b
i      t| _                                   ^c
ast(../src/absl/meta/type_traits.hD:e99s:t27,:  snote: oin instantiation of template class 'absl::is_trivially_destructible<S2ClippedShape>' requested hereu
rce   )99; | 
        |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    165  |  } 
        |  ~ 
    ../src/absl/base/internal/endian.h : 143 :a39b:s lnote: :while substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]:
is_  t143r | i v iraeltluyr_nd ebsittr_uccatsitb<lien<tT1>6:_:tv>a(lFureo>m H{o}s;t
1      6| (                          ^b
it_../src/absl/meta/type_traits.hc:a422s:t41<:u inote: nin instantiation of template class 'absl::type_traits_internal::IsTriviallyCopyConstructibleObject<S2ClippedShape>' requested heret
16_  t422> | ( x ) ) ) ; 
        |                                        ^ 
std::is_lvalue_In file included from rs2/s2testing.cce:f19e:
rIn file included from e../src/s2/s2testing.hn:c31e:
<In file included from T../src/s2/r2.h>:>22::
:In file included from t../src/s2/util/math/vector.hy:p34e:
:In file included from :../src/absl/utility/utility.ht:y50p:
eIn file included from  ../src/absl/base/internal/invoke.h{:
64      :
| ../src/absl/meta/type_traits.h                                        ^:
560:8../src/s2/util/gtl/compact_array.h:: 508warning: :builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins]23
: note: in instantiation of template class 'absl::is_trivially_copy_constructible<S2ClippedShape>' requested here  
560 |      508  |     (s_t_ahtaisc__tarsisveiratl(_aabsssli:g:ni(sE_xttreinvtisaRlelmyo_vceodp)y _|c|o n!sktIrsuCcotpiybOlreM<ovvaelAuses_itgynpaeb>l:e:)v a&l&u
e       | &       ^&

      |                       ^
../src/s2/util/gtl/compact_array.h:528:30: note: in instantiation of template class 'gtl::compact_array_base<S2ClippedShape>' requested here
  528 | cla../src/absl/meta/type_traits.hs:s301 :c36o:m pwarning: abuiltin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins]c
t_ar  r301a | y   :   p:u bsltidc: :cionmtpeagcrta_la_rcroanys_tbaanste<<bTo,o lA,>  _{_
h      a| s                             ^_
trivial_de../src/s2/s2shape_index.hs:t157r:u21c:t onote: rin instantiation of template class 'gtl::compact_array<S2ClippedShape>' requested here(
T)   157& | & 
       S| 2                                   ^C
lip../src/absl/meta/type_traits.hp:e562d:S7h:a pnote: ein instantiation of template class 'absl::is_trivially_destructible<unsigned short>' requested hereS
et   s562h | a p e s _ ; 
i      s| _                    ^t
rivially_destructible<ExtentsRemoved>::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 DesIn file included from ts2/s2text_format.cc :b16i:
tIn file included from _../src/s2/s2text_format.hc:a32s:
tIn file included from (../src/s2/s2cell_id.hc:o31n:
sIn file included from t../src/s2/r2.h :S22o:
uIn file included from r../src/s2/util/math/vector.hc:e34&:
 In file included from s../src/absl/utility/utility.ho:u50r:
cIn file included from e../src/absl/base/internal/invoke.h): 64{:

../src/absl/meta/type_traits.h      :| 494                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:
17:   164warning:  | builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Wdeprecated-builtins] 
 ret  u494r | n   _ _ b u i l t i nb_oboilt,_ c_a_shta(sD_etsrti,v isaolu_racses)i;g
n      (| t  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~y
p  e165n | a}m
e       | s~t
d::../src/absl/base/internal/endian.hr:e143m:o39v:e _note: rwhile substituting deduced template arguments into function template 'bit_cast' [with Dest = uint16_t, Source = int16_t, $2 = (no value)]e
fer  e143n | c e <rTe>t:u:rtny pbei)t _&c&a
s      t| <                ^i
nt1../src/s2/util/gtl/compact_array.h6:_509t:>23(:F rnote: oin instantiation of template class 'absl::is_trivially_copy_assignable<S2ClippedShape>' requested herem
Host  15096 | ( b i t _ c a s t < u i n t 1 6 _atb>s(lx:):)i)s;_
t      r| i                                      ^v
ially_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<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/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/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/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();
      |                                                      ^
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) &&
      |        ^
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/ostringstream.cc -o s2/strings/ostringstream.o
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/strings/serialize.cc -o s2/strings/serialize.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) &&
      |        ^
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/bits/bit-interleave.cc -o s2/util/bits/bit-interleave.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/bits/bits.cc -o s2/util/bits/bits.o
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) &&
      |        ^
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/coding/coder.cc -o s2/util/coding/coder.o
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) &&
      |        ^
/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
../src/absl/meta/type_traits.h:559:8: warning: builtin __has_trivial_copy is deprecated; use __is_trivially_copyable instead [-Wdeprecated-builtins]
  559 |       (__has_trivial_copy(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.
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) &&
      |        ^
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/exactfloat/exactfloat.cc -o s2/util/math/exactfloat/exactfloat.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 -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
/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)